Удалить папку, которую я создал в /system/lib

У меня есть root-доступ и я могу перемонтировать. Я создал папку в /system/lib/named rfsa, но не знаю, почему я не вижу или не могу открыть эту папку.

Когда я печатаю ls, он там. Но когда я набираю ls -l, я получаю эту ошибку

lstat './rfsa' failed: I/O error.

В первый раз, когда я получаю эту ошибку, мне приходится перезагружаться, рутировать и снова перемонтировать. Также, если я попытаюсь rmdir /system/lib/rfsa/(я сам создал эту папку), я получаю эту ошибку

rmdir: rfsa: Read-only file system

Любые идеи, что я могу попробовать?


Вот он перед ls -lкомандой:

/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0

После ls -lполучения ошибки она меняется на:

/dev/block/bootdevice/by-name/system /system ext4 ro,seclabel,relatime,discard,data=ordered 0 0

У меня нет busybox, но при первой попытке mount -w -o remount -t ext4 /dev/block/bootdevice/by-name/system /systemничего не изменилось. После того, как я получаю ошибку ввода-вывода файла, на этот раз я получаю:

mount: Read-only file system

Вот cat /proc/mountsрезультат, прежде чем я попытаюсь получить доступ к плохой папке:

rootfs / rootfs ro,seclabel 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,size=949072k,nr_inodes=237268,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=750,gid=1000 0 0
tmpfs /mnt tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
pstore /sys/fs/pstore pstore rw,seclabel,relatime 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0
/dev/block/bootdevice/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/dsp /dsp ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/modem /firmware vfat ro,context=u:object_r:firmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/block/bootdevice/by-name/tctpersist /tctpersist ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/hdcp /persist/data ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
tmpfs /storage tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=755,gid=1000 0 0
/dev/block/dm-0 /data ext4 rw,seclabel,nosuid,nodev,relatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/fuse /mnt/runtime/default/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/runtime/read/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/runtime/write/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
root@idol4:/ # cat /proc/mounts | grep system
/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0
каков вывод, mount | grep systemкогда он говорит rmdir: rfsa: Read-only file system?
Как вы перемонтируете? Пожалуйста, попробуйте mount -o rw,remount,rw /system.
Возможно, это связано с seclabel, см. Что делает опция монтирования «seclabel»? Можете ли вы проверить, какие расширенные атрибуты установлены ( xattrsдолжны это сделать)?
Сначала у меня есть доступ rw, но как только я пытаюсь получить доступ к созданной папке и получаю ошибку ввода-вывода, а также с «mount -o rw,remount,rw /system», я получаю: «mount: файл только для чтения система".
Если вы еще не пробовали, попробуйте поискать предложения в этом направлении: google.co.in/search?q=ls+input+output+error+linux

Ответы (2)

Если у вас есть busybox, вы можете попробовать

busybox mount /system -o rw,remount

или используйте системную mountкоманду:

mount -w -o remount -t ext4 /dev/block/bootdevice/by-name/system /system
Автобусной будки нет. Но монтирование системы поначалу ничего не меняет (потому что у меня уже есть доступ rw). Но как только я пытаюсь получить доступ к созданной папке (rfsa), доступ меняется на ro, и при вводе команды выше также возвращается: «mount: файловая система только для чтения»
Я думаю, у вас ошибка файловой системы, как говорит @ott. Я бы запустил восстановление и попытался восстановить файловую систему. Когда загрузится пользовательское восстановление, попробуйте adb shellс ПК, смонтируйте раздел /system и удалите плохой каталог. Или попробуйте восстановить файловую систему.

Это опция монтирования, при которой fs перемонтируется только для чтения в случае возникновения ошибки.

Но у вас проблема с папкой:

Может ли быть так, что имя папки содержит специальные символы (включая пробелы или символы возврата)? Проверьте это с помощью ls -b *или ls -q *если вы lsего поддерживаете.

Я пытался, но эти параметры не поддерживаются для ls. Любые другие предложения? Я пытался, adb reboot recoveryно телефон перезагружается на экране с графикой, показывающей увеличение/уменьшение громкости, но я ничего не могу там сделать.