Jak edytować plik „etc / hosts”?

39

Korzystam z Nexusa 5 na Androidzie 4.4. Kitkat. Chciałbym edytować /etc/hostsplik i dodać mapowania przekierowań, aby zablokować kilka reklam.

Muszę wiedzieć, jak uzyskać dostęp / modyfikować / zamieniać /etc/hostsplik.


Sprawdziłem już poniżej podobne pytania / odpowiedzi:

Tilak
źródło
1
Jeśli próbujesz tworzyć strony internetowe, może nie być konieczne edytowanie pliku / etc / hosts, możesz użyć zdalnego debugowania w Chrome .
Flimm,

Odpowiedzi:

43

To właściwie kompilacja odpowiedzi i moje własne doświadczenie.

Pobierz / zainstaluj kopię ADB, a następnie wpisz

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

Jesteś skończony.

  • Rzeczy po #to komentarze i może być omited od wejścia. Jeśli wycinasz je i wklejasz, powinno to być wystarczająco bezpieczne.
  • Przypuszcza się, że masz dostęp do roota na swoim urządzeniu (lub sunie będzie działać). W rzeczywistości nie będziesz mógł edytować pliku, jeśli nie masz roota.
  • Przypuszcza się, że masz zainstalowany busybox (w przeciwnym razie możesz przegapić takie rzeczy jak vii nslookup). Cóż, nadal możesz próbować grać z adb pull/ adb pushthen.
  • To dość często adb remountnie działa i jest to obejście.

    • Uwaga: po uruchomieniu suw powłoce możesz zostać poproszony przez gadżet o potwierdzenie!
jno
źródło
6
Czy to działa, jeśli urządzenie nie zostało zrootowane?
itslittlejohn
2
w moim przypadku nie ma komend ani su, ani vi: S6 edge
albanx
2
Jasne, telefon musi być najpierw zrootowany (każdy linux musi być „zrootowany”, aby móc edytować pliki /etc). Polecam SuperSU przez Chainfire aplikacji i jej Busybox - to daje zarówno sui vi. Pytanie „Jak zrootować mój telefon” jest poza tym zakresem.
2015
1
Stare dobre echo ratuje mnie: echo „1.2.3.4 domain.tld” >> / system / etc / hosts
Oleg Neumyvakin
echo jest dobre tylko wtedy, gdy musisz dodać linię. lub w celu zastąpienia całego pliku. w przypadku bardziej zaawansowanej edycji będziesz musiał użyć narzędzia vi / sed / awk / you-name-it.
jno
16

Uwaga: Aby edytować plik hostów, urządzenie powinno być zrootowane

Możesz edytować plik etc / hosts za pomocą Eksploratora plików ES lub dowolnego Eksploratora plików z dostępem do katalogu głównego.

LUB

Sprawdź metodę

Ach
źródło
0

Potrzebny jest root

Użyj aplikacji FTPServer, aby eksplorować pliki za pomocą komputera PC / Mac. Po prostu skopiuj /system/etc/hostsedytuj go na komputerze i skopiuj i wklej hostsplik do tego samego słownika w telefonie.


źródło
Jak chcesz skopiować plik do tej lokalizacji na Androidzie?
Musa Haidari