'etc / hosts'파일을 편집하는 방법?


39

Android 4.4에서 Nexus 5를 사용하고 있습니다. 킷 캣. /etc/hosts광고를 거의 차단하기 위해 파일 을 수정 하고 리디렉션 매핑을 추가하고 싶습니다 .

/etc/hosts파일 에 액세스 / 수정 / 대체하는 방법을 알아야 합니다.


비슷한 Q / A 아래에서 이미 확인했습니다.


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
내 경우에는 모두 su도 vi 명령도 존재하지 않습니다. S6 edge
— albanx

2
물론, 전화는 먼저 루팅해야합니다 ( /etc실제로 모든 파일을 편집하려면 모든 리눅스가 "루팅"되어야 함 ). 내가 권하고 싶습니다 Chainfire에 의해 SuperSU를 응용 프로그램 및 비지 박스 - 그것은 당신에게 모두를 줄 것이다 su하고 vi. "내 전화를 루팅하는 방법"이라는 질문은 여기서 다루지 않습니다.
— jno

1
오래된 좋은 반향으로 나를 구할 수 있습니다 : echo "1.2.3.4 domain.tld">> / system / etc / hosts
— Oleg Neumyvakin

echo는 줄을 추가해야하는 경우에만 좋습니다. 또는 전체 파일을 교체합니다. 더 고급 편집의 경우 vi / sed / awk / you-name-it 도구를 사용해야합니다.
— jno

16

참고 : 호스트 파일을 편집하려면 장치를 루팅해야합니다

ES 파일 탐색기 또는 루트 액세스 권한이있는 모든 파일 탐색기를 사용하여 etc / hosts 파일을 편집 할 수 있습니다 .

또는

이 방법을 확인하십시오


0

필요한 루트

FTPServer 앱을 사용 하여 PC / Mac을 통해 파일을 탐색하십시오. /system/etc/hostsPC에서 hosts파일을 복사 한 후 파일을 전화기의 동일한 사전에 복사하여 붙여 넣기 만하면 됩니다.


Android에서 해당 위치로 파일을 복사하는 방법은 무엇입니까?
— Musa Haidari
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.