Як редагувати файл "etc / hosts"?


39

Я використовую Nexus 5 на Android 4.4. Kit Kat. Я хотів би відредагувати /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

Ви закінчили.

  • Після #цього коментарі залишаються коментарями, і вони можуть бути опущені з вашого тексту. Якщо ви вирізаєте їх, то це також повинно бути безпечним.
  • Передбачається, що у вас є кореневий доступ на вашому пристрої (або suзвичайна робота). Насправді ви не зможете редагувати файл, якщо ви все одно не маєте кореня.
  • Передбачається, що у вас встановлений зайнятий ящик (інакше ви можете пропустити такі речі, як viі nslookup). Ну, ви все одно можете спробувати пограти з adb pull/ adb pushтоді.
  • Досить поширені adb remountзбої в роботі, і це рішення.

    • Примітка. Коли ви працюєте suв оболонці, вас можуть попросити на своєму гаджеті підтвердити!

6
Чи працює це, якщо пристрій не вкоренився?
itslittlejohn

2
ні в
команді

2
Звичайно, телефон повинен бути укорінений спочатку (будь-який Linux повинен бути «вкорінений» для редагування файлів /etc, власне). Я б рекомендував додаток SuperSU від Chainfire та його зайнятий ящик - він дасть вам і те, suі інше vi. Питання "Як вкоренити мій телефон" тут поза рамками.
jno

1
Старе гарне відлуння врятує мене: echo "1.2.3.4 domain.tld" >> / system / etc / hosts
Олег Неумивакін

відлуння добре, лише якщо вам доведеться додати рядок. або замінити весь файл. у разі будь-якого більш досконалого редагування, вам доведеться використовувати інструмент vi / sed / awk / you-name-it.
jno

16

Примітка. Для того, щоб редагувати файли хостів, ваш пристрій має бути вкоріненим

Ви можете редагувати файл etc / hosts за допомогою провідника ES File або будь-яких дослідників файлів з кореневим доступом.

АБО

Перевірте цей метод


0

Корінь потрібен

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


Як ви хочете скопіювати файл у це місце на android?
Муса Гайдарі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.