Как редактировать файл 'etc / hosts'?

39

Я использую Nexus 5 на Android 4.4. Кит-Кат. Я хотел бы отредактировать /etc/hostsфайл и добавить сопоставления перенаправления, чтобы заблокировать несколько объявлений.

Мне нужно знать, как получить доступ / изменить / заменить /etc/hostsфайл.


Я уже проверил ниже аналогичные вопросы и ответы:

Тилак
источник
1
Если вы пытаетесь заняться веб-разработкой, вам может не понадобиться редактировать файл / etc / hosts, вы можете использовать удаленную отладку с Chrome .
Flimm

Ответы:

43

На самом деле это сборник ответов и мой собственный опыт.

Итак, получите / установите копию ADB, затем наберите

adb devices -l # make sure your gadget is listed
adb shell # run a shell there
su # become the root (don't miss confirmation request!)
mount -o rw,remount /system # allow to write
vi /system/etc/hosts ## edit the file in place - do what you whant, then <ESC>:wq ##
mount -o ro,remount /system # get things back to normal
exit # unroot
nslookup YourBlockedAdSite.Net # check if it works
exit # good bye

Вы сделали

  • Вещи после #являются комментариями и могут быть опущены из вашего ввода. Если вы нарежете их, это тоже должно быть достаточно безопасно.
  • Предполагается, что у вас есть root-доступ на вашем устройстве (или он не suбудет работать). На самом деле, вы не сможете редактировать файл, если у вас все равно нет рута.
  • Предполагается, что у вас установлен busybox (иначе вы можете пропустить такие вещи, как viи nslookup). Ну, вы все равно можете попробовать поиграть с adb pull/ adb pushзатем.
  • Это довольно часто, что adb remountне работает, и это обходной путь.

    • Примечание. Когда вы запускаете suоболочку, на вашем гаджете может быть предложено подтвердить!
Jno
источник
6
Это работает, если устройство не рутировано?
itslittlejohn
2
ни su ни vi команды не присутствуют в моем случае: S6 edge
albanx
2
Конечно, телефон должен быть рутован первым (любой linux должен быть «рутирован», чтобы редактировать файлы /etc, на самом деле). Я бы порекомендовал приложение SuperSU от Chainfire и его busybox - оно даст вам и то, suи другое vi. Вопрос «Как рутировать мой телефон» здесь выходит за рамки.
Jno
1
Старый добрый эхо спасает меня: echo "1.2.3.4 domain.tld" >> / system / etc / hosts
Олег Неумывакин
Эхо хорошо, только если вы должны добавить строку. или заменить весь файл. в случае более сложного редактирования вам придется использовать инструмент vi / sed / awk / you-name-it.
Jno
16

Примечание: для редактирования файла hosts ваше устройство должно быть рутировано

Вы можете редактировать файл etc / hosts с помощью ES File Explorer или любых файловых обозревателей с правами root.

ИЛИ

Проверьте этот метод

Akhil
источник
0

Нужен рут

Используйте приложение FTPServer для исследования файлов через ПК / Mac. Просто скопируйте, /system/etc/hostsотредактируйте его на своем ПК, скопируйте и вставьте hostsфайл в тот же словарь на вашем телефоне.


источник
Как вы хотите скопировать файл в эту папку на Android?
Муса Хайдари