2016-01-14 3 views
1

На корневом устройстве Android 6.0.1 я хотел бы иметь tmpfs, доступный для записи пользователем. Я:Android tmpfs, доступный для записи

mkdir /sdcard/test 
su 
mount -t tmpfs -o size=512m tmpfs /sdcard/test 
#Note that the permissions of /sdcard/test have changed 
chmod 0771 /sdcard/test 
chown root:sdcard_rw /sdcard/test 
exit 
touch /sdcard/test/aa 

смонтировать отчеты:

tmpfs /storage/emulated/0/test tmpfs rw,seclabel,relatime,size=524288k 0 0 

Но я получаю:

touch: '/sdcard/test/aa': Permission denied 

Так что я не могу писать в/SDCARD/теста в качестве стандартного пользователя (через оболочки или приложение). Что я делаю не так? Я также попытался создать mount in/data /, и это та же проблема.

EDIT 1:

Я попытался на Android 4.4 устройства, и это работает. Итак, что-то изменилось и было ограничено в более поздней версии. Мне интересно, влияет ли на 5.x тоже.

EDIT 2:

Как ни странно, гора сообщает точку монтирования дважды:

tmpfs /mnt/runtime/default/emulated/0/test tmpfs rw,seclabel,relatime,size=524288k 0 0 
tmpfs /storage/emulated/0/test tmpfs rw,seclabel,relatime,size=524288k 0 0 

EDIT 3:

Когда я делаю файл контакт как пользователь, ядро сообщает следующее:

[54484.588865] type=1400 audit(1452975001.917:150): avc: denied { write } for pid=30781 comm="touch" name="/" dev="tmpfs" ino=398770 scontext=u:r:shell:s0 tcontext=u:object_r:tmpfs:s0 tclass=dir permissive=0 

ответ

Смежные вопросы