Как изменить файл hosts на android

Я успешно укоренил свой Samsung Galaxy Mini (android 2.2.1) и подумал, что я могу что-то изменить (как обычно это может сделать root).

Я хотел бы изменить файл hosts на android, чтобы включить некоторые локальные адреса. Тем не менее, я все еще получаю сообщение, что у меня нет разрешения на это. Я попробовал следующие варианты:

  • adb push /path/to/my/new/hosts /system/etc... и я получил ответ Read-only file system.

  • непосредственно в оболочке телефона. Но это тоже не сработало. Я могу сделать su в консоли, но не могу изменить файл.

Не странно ли, что в качестве суперпользователя мне не разрешено изменять некоторые файлы?

Ответ 1

У вас есть root, но вам все равно нужно перемонтировать/систему для чтения/записи

$ adb shell
$ su
$ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system

Перейдите сюда для получения дополнительной информации: Установите файловую систему чтения-записи.

Ответ 2

$ adb shell
$ su
$ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system

Это предполагает, что ваша/система - yaffs2, а в /dev/block/mtdblock 3 - более простой/лучший способ сделать это на большинстве телефонов Android.

adb shell
$ su
# mount -o remount,rw /system

Готово. Это просто говорит о перезагрузке/чтении и записи системы, вам не нужно указывать файловую систему или местоположение монтирования.

Ответ 3

В моем случае это действительно не работало - то есть для того, чтобы перезаписать файл хостов, вы должны следовать его указаниям, то есть:

./emulator -avd myEmulatorName -partition-size 280

а затем в другом терминале (нажатие нового файла hosts/tmp/hosts):

./adb remount
./adb push /tmp/hosts /system/etc

Ответ 4

Вероятно, самым простым способом было бы использовать это приложение Hosts Editor. Вы должны иметь root