Не могу перемонтировать / систему в rw

15

Я безнадежно пытаюсь вставить приложение с adb в папку / system / app (чтобы установить PlayStore на мой недорогой планшет). Поэтому я попытался перемонтировать раздел / system с правами root :

mount -o remount,rw /system 

Но это всегда дает мне один и тот же ответ:

mount: Read-only filesystem

И я попробовал также с этой командой:

mount -o remount,rw -t ext4 /dev/block/actc /system

но это то же самое ... И я действительно не понимаю, почему, даже с пользователем root, я не могу изменить это ...

Так что, если у кого-то есть идея, она может спасти одного человека, попавшего в беду: p

Razaborg
источник
1
У меня такая же проблема с Android 4.4.2, Nexus 4. Когда я делаю это команда ядро добавляет на следующее сообщение в dmesg: EXT4-fs (mmcblk0p21): re-mounted. Opts: (null). Почему (null)? Я прямо просил rw!
Дмитрий
ты когда-нибудь это понимал? У меня та же проблема. Используя вкладку Samsung Galaxy.
Джейкоб Миншалл
@JacobMinshall и @Dmitry, если вы все еще заинтересованы, попробуйте явно запустить `/ system / bin / mount, а не неявно запустить xbin. Это сработало для меня.
Джон Кумбс

Ответы:

14

Синтаксис mountкоманды обычно требует указать цель:

mount -o remount,rw /system /system

Этот вывод может быть полезен для нас, чтобы лучше понять вашу проблему:

cat /proc/mounts

В качестве последнего средства, поскольку у вас есть root, вы можете попытаться сохранить необработанный образ системы, смонтировать его на свой ящик и вставить туда приложение, а затем прошить его обратно на свое устройство. Чтобы сохранить необработанный образ системы:

dd if=<block device mounted on /system> of=<output file>

Если вы идете этим путем, убедитесь, что вы сохранили исходный образ системы на случай, если что-то пойдет не так.

zeiky.dev
источник
надеюсь, я получил команду дд в запасе ...
Ван
@Wang Я никогда не видел, чтобы dd отсутствовал, но, возможно, на некоторых устройствах есть неполные системные образы, в этом случае вы можете использовать cat / block / device> output-file
zeiky.dev
1

Я не уверен, насколько это вообще применимо, но у меня возникла та же проблема, и я обнаружил, что этот комментарий reddit решил ее для меня (на Android Lollikat, то есть cm11):

http://www.reddit.com/r/cyanogenmod/comments/2m9t61/how_do_i_remount_system_rw_on_cm11_m12/

По сути, мне пришлось перемонтировать, явно используя, /system/bin/mount -o ...а не просто mount -o .... Я предполагаю, что в какой-то момент версия в / system / xbin стала иметь приоритет, и по какой-то причине эта версия не работает тихо. (Я говорю «в какой-то момент», потому что link2sd не начал жаловаться на RO до недавнего времени.) Похоже, должна быть возможность отредактировать PATH, чтобы исправить это, чтобы не приходилось использовать командную строку каждый раз, когда я или Приложение должно сделать это. Я не уверен, как еще, хотя.

FWIW, вот фактический скрипт для моего устройства (s5360 на cm11 / LolliKat). Он запускается откуда угодно, но в итоге я сохранил его в / system / xbin, чтобы он был доступен для всех оболочек.

#!/system/bin/sh
echo "Remounting /system as RW (read/write)..."
/system/bin/mount -o remount,rw /system
mount | grep yaff

Эта последняя строка просто для быстрой обратной связи относительно того, действительно ли это работает или нет (так как мои внутренние разделы - yaff2). Строка перед этим может быть сделана более явной, как любая из них, но на моем устройстве это не обязательно:

/system/bin/mount -o remount,rw /system /system
/system/bin/mount -o remount,rw /system /system
/system/bin/mount -o remount,rw /dev/block/mtdblock8 /system
/system/bin/mount -o remount,rw -t yaffs2 /dev/block/mtdblock8 /system
Джон Кумбс
источник
mount -o remount,rw /system работал на меня. Мое устройство - Nexus 5 с Android 5.1.1 LMY48B
Максим Дмитриев
1

Для меня ... ничего не получалось и в конце концов это сработало:

adb root
adb remount
sgupta
источник
1
«adbd не может работать от имени пользователя root в производственных сборках»
Вадим
0

У вас есть небезопасное ядро ​​(boot.img)? Доступ на запись в системный раздел обычно блокируется ядром при загрузке. Вам может понадобиться прошить модифицированное ядро, чтобы получить доступ на запись в / system с помощью adb.

Можете ли вы смонтировать / system как r / w в ОС? Затем вы можете отправить файл на SD-карту, используя adb или обычный USB (MTP или Mass Storage в зависимости от устройства), а затем скопировать его в нужное место и установить разрешения с помощью терминала на устройстве или файлового менеджера с поддержкой root. Затем перезагрузите компьютер и он должен быть там и установлен.

abqnm
источник
Я думаю, что когда мы пытаемся получить доступ к / system, это означает, что это еще не рутировано. Весь смысл использования root adb shell состоит в том, чтобы поместить что-то вроде su в / system для его рутирования.
Ван
@ Ван ОП четко заявил, что у него уже есть root
zeiky.dev
0

Я обнаружил, что могу смонтировать систему в rw, используя режим восстановления TWRP, нажав «Монтировать» и выбрав «Система», убедившись, что «Монтировать только для чтения» не отмечено. Затем я мог скопировать APK в system/appпапку, используя встроенный файловый менеджер TWRP.

Все мои другие попытки монтирования как rw с использованием ADB или эмулятора терминала потерпели неудачу. Не пытался использовать BusyBox.

По памяти, это работало на меня в прошлом.

Том Грейн
источник
0

У меня была аналогичная проблема. У меня был успех, когда я использовал Busybox (не путать с системным приложением Toybox):

busybox mount -o remount,rw /system 
Адам Фельсон
источник