Я недавно рутировал свой Droid X и все вроде отлично работает. Я сделал некоторые изменения, build.prop
и когда adb push build.prop /system/
я получаю, я получаю следующую ошибку:failed to copy 'c:\build.prop' to '/system//build.prop': Read-only file system
.
Как я могу это исправить?
adb remount
, что вы получаете?Ответы:
Не на всех телефонах и версиях Android установлены одинаковые вещи.
Ограничение параметров при перемонтировании было бы наилучшим.
Просто перемонтируйте как rw (чтение / запись):
После внесения изменений перемонтируйте в ro (только для чтения):
источник
adb root
или вы получите Отказ в разрешении при нажатии файла.Balazss-MBP:tools varh1i$ adb shell
generic_x86_64:/ # mount -o rw,remount /system
'/dev/block/vda' is read-only
mv hosts /system/etc/hosts
работает для меня и, кажется, самое простое решение.
источник
Not running as root. Try "adb root" first.
. А потомadbd cannot run as root in production builds
.$ adb disable-verity
перезагрузить устройство, прежде чем мы сможем его запустить$ adb remount
Not running as root. Try "adb root" first.
. Я вошел,adb root
а затем снова,adb remount
но все еще та же ошибка:Not running as root. Try "adb root" first.
Получил это на форуме Android, где я задавал тот же вопрос. Надеюсь, это поможет кому-то еще.
На эмуляторе терминала на телефоне:
Затем в командной строке cmd выполните
adb push
источник
adb shell <command>
можно использовать с компьютера (если у вас нет терминала на телефоне)Хотя я знаю, что вопрос касается реального устройства, в случае, если кто-то попал сюда с похожей проблемой в эмуляторе, с какими-либо инструментами, самыми последними по состоянию на февраль 2017 года, эмулятор должен быть запущен из командной строки с помощью:
Для чего-либо, чтобы быть доступным для записи
/system
. Без этого флага ни одна комбинацияremount
илиmount
не позволит писать/system
.После запуска эмулятора с этим флагом достаточно одного
adb remount
после,adb root
чтобы получить разрешения для отправки/system
.Вот пример командной строки, которую я использую для запуска своего эмулятора:
Значение для
-avd
флагов происходит от:источник
Я думаю, что самый безопасный способ это перемонтировать / system как read-write, используя:
и когда закончите, перемонтируйте его только для чтения:
источник
На моем Samsung galaxy mini S5570 (после получения рута на мобильном телефоне):
Кулак, как корень, я побежал:
как обычный пользователь:
Предоставление прав root на сенсорном экране
перечислите все точки монтирования, которые у нас есть, и мы можем видеть, в моем случае, что / dev / stl12 был смонтирован в / system как ro (только готово), поэтому нам просто нужно сделать:
источник
Попробуйте следующее в командной строке:
источник
adb root remount
Это работает для меня и является самым простым решением.
источник
Вот что сработало для меня. У меня было эмулированное устройство Android 7.1.1 (Nougat).
На терминале я нажал следующую команду. Одна вещь, которую нужно отметить, это флаг -writable-system
На другой вкладке
Все изменения, внесенные вами в содержимое / system, сохранятся после перезапуска.
источник
Я проверил с эмулятором и следующий работал.
Как уже упоминалось выше, выполните второй шаг за один выстрел.
источник
Откройте эмулятор терминала на телефоне: тогда
после запуска этого демона
затем только чтение преобразуется в чтение-запись.
источник
работает для меня
источник
источник
Я нашел эту статью в Google и подумал, что добавлю шаги, необходимые для Sony Xperia Z (4.2.2).
У Sony есть сторожевой процесс, который обнаруживает, когда вы изменили ro на rw на / и / system (это единственные, которые я пытался изменить) и, возможно, другие.
Ниже было то, что я побежал, чтобы выполнить изменения, которые я пытался достичь. Я вставил их в окно, потому что удаление бита выполнения из / sbin / ric должно быть выполнено быстро, чтобы остановить его перезапуск. (Я пытался
stop ric
; это не работает - хотя это работало на предыдущей версии Android на телефоне).Я изменил файл hosts здесь, так что это место, где вы вносите необходимые изменения в файловую систему. Чтобы оставить вещи такими, какими мы их нашли, сделайте так:
В этот момент RIC должен автоматически перезапустить. (Он перезапустился для меня автоматически.)
источник
Добавим немного больше к ответу Яна Бергстрёма: поскольку Android - это система на основе Linux, а путь в Linux содержит косую черту (../), при использовании команды push используйте «/» для определения пути назначения на устройстве Android.
Например, команда выглядит так: adb push C: \ Users \ admin \ Desktop \ 1.JPG sdcard / pictures /
Обратите внимание, что здесь, обратная косая черта используется для определения пути к исходному файлу, который должен быть передан с компьютера с Windows, а прямая косая черта используется для определения пути назначения, потому что Android - это система на основе Linux. Вам не нужно выступать в роли пользователя root, чтобы использовать эту команду, а также, она отлично работает на производственных устройствах.
источник
Иногда вы получаете сообщение об ошибке, потому что адресата в телефоне не существует. Например, некоторые андроид телефон внешнего хранилища
/storage/emulated/legacy
вместо/storage/emulated/0
.источник
Спасибо, Сержио , за команду «mount» без идеи параметров. Мне нужно сделать
adb push
в/data/data/com.my.app/lib
течение некоторого тестового вопроса, и получить «только для чтения файловой системы» сообщение.Команда ls показывает мне:
root@android:/ # ls -l /data/data/com.my.app/
drwxrwx--x u0_a98 u0_a98 2016-05-06 09:16 cache drwxrwx--x u0_a98 u0_a98 2016-05-06 09:04 files lrwxrwxrwx system system 2016-05-06 11:43 lib -> /mnt/asec/com.my.app-1/lib
Итак, понятно, что каталог "lib" отделен от других каталогов приложений.
команда
mount -o rw,remount /mnt/asec
не решила проблему «r / o fs», она хочет, чтобы параметр устройства был указан перед параметром каталога.Команда "df" тоже не помогла, но показывает, что мой
/mnt/asec/com.my.app-1
каталог находится в отдельной точке монтирования.Тогда я смотрю
mount
и вуаля!root@android:/ # mount ......... /dev/block/dm-4 /mnt/asec/com.my.app-1 ext4 ro,dirsync,relatime 0 0
Следующие шаги уже описаны вверх: перемонтировать в RW, нажать и перемонтировать обратно в RO.
источник
это то же самое, что нужно распаковать и перепаковать файл initrc.img и отредактировать
init
файл с кодом mount / systemисточник
Копировать файлы на SD-карту?
Ну, я полагаю, вам нравится копировать данные на SD-карту с компьютера разработчиков? Возможно, вы укоренили устройство и сделали доступной область, к которой обращаетесь?) У меня была примерно такая же проблема при загрузке файлов данных для моего приложения (Android Studio 1.3.2 в Win7), но.
Так, например, команда adb может выглядеть так:
adb push C: \ testdata \ t.txt /sdcard/download/t.txt
источник
Если при копировании файла, доступного только для чтения, происходит сбой, можно попытаться найти исходный файл в корневом каталоге и изменить его с помощью корневого текстового редактора (предпочтительно) текстового редактора RB, он поставляется с приложением ROM Toolbox.
источник
Попробуйте это в эмуляторе терминала от имени пользователя root:
источник
В моем случае я использовал команду adb push
~/Desktop/file.txt ~/sdcard/
Я изменил это на
~/Desktop/file.txt /sdcard/
и тогда это сработало.Обязательно отключите и снова подключите телефон.
источник
Как упоминал Чэнь-Син, самый простой способ:
Но мне пришлось сначала изменить свои настройки:
Настройки → Параметры разработчика → Root-доступ
Убедитесь, что у ADB есть Root-доступ:
источник