안드로이드 개발 질문/답변
(글 수 45,052)
질문: hosts파일의 내용을 수정 하고 싶은데, 권한이 없습니다.
아래의 경로에 hosts파일이 있습니다.
경로: /system/etc/hosts
이 파일의 내용은 아래와 같습니다. (단지 1줄)
127.0.0.1 localhost
이 파일에 기술된 IP address와 domain이 웹 접근 시 우선적으로 매핑되어 동작하는 것으로 알고 있습니다.
그런데 이곳에 특정한 ip를 연결해주지 않으면 접근할 수 없는 웹 사이트도 있습니다.
예를 들자면 아래와 같이 추가 적으로 값을 추가 해야지 my.home.com 사이트에 접근이 가능합니다.
그래서 반드시 이 파일의 수정이 필요한 상황입니다.
111.222.33.77 my.home.com
문제는 hosts의 권한이 -rw-r--r--이라서 readonly 상태입니다.
이에 이러한 파일 들을 어떻게 수정 가능한지 알고 싶습니다.
아래의 경로에 hosts파일이 있습니다.
경로: /system/etc/hosts
이 파일의 내용은 아래와 같습니다. (단지 1줄)
127.0.0.1 localhost
이 파일에 기술된 IP address와 domain이 웹 접근 시 우선적으로 매핑되어 동작하는 것으로 알고 있습니다.
그런데 이곳에 특정한 ip를 연결해주지 않으면 접근할 수 없는 웹 사이트도 있습니다.
예를 들자면 아래와 같이 추가 적으로 값을 추가 해야지 my.home.com 사이트에 접근이 가능합니다.
그래서 반드시 이 파일의 수정이 필요한 상황입니다.
111.222.33.77 my.home.com
문제는 hosts의 권한이 -rw-r--r--이라서 readonly 상태입니다.
이에 이러한 파일 들을 어떻게 수정 가능한지 알고 싶습니다.

2010.01.08 14:07:00
시스템 권한을 가지고 있는 어플만 수정이 가능하지 않을까요^^;
그런 파일을 건드릴 수 있게 한다면 유명한 사이트를 광고 사이트로 연결 시켜버린다던지.. 그런게 가능하기 때문에
보안에 문제가 될 수 있을 것 같습니다.
그런 파일을 건드릴 수 있게 한다면 유명한 사이트를 광고 사이트로 연결 시켜버린다던지.. 그런게 가능하기 때문에
보안에 문제가 될 수 있을 것 같습니다.
2010.01.08 14:46:14
퍼미션이나 권한 관련 문제로 검색해 보셔야 할 것 같네요.
회색님이 답변해 주신 것중에 "사용자가 애플리케이션을 인스톨하기 전에 해당 애플리케이션이 어떤 Permission을 사용하고 있는지 미리 체크할 수 있도록 되어있습니다. 만약에 의심이 가는 애플리케이션이 필요이상의 Permission을 요구한다면 설치를 하지 않는 것이지요."
인스톨 할 때 시스템 권한을 요구하는 프로그램이라면 사용자가 설치 하지 않을 가능성도 있구요^^;
윈도우에서 hosts 파일 설정하는거야 저도 잘 알고 있지만.. ip로 접근하도록 하면 되는 것 아닌가요? ;ㅁ; 구지 도메인을 필수로 설정할 필요가 있는지 저는 잘 모르겠어서요^^;
회색님이 답변해 주신 것중에 "사용자가 애플리케이션을 인스톨하기 전에 해당 애플리케이션이 어떤 Permission을 사용하고 있는지 미리 체크할 수 있도록 되어있습니다. 만약에 의심이 가는 애플리케이션이 필요이상의 Permission을 요구한다면 설치를 하지 않는 것이지요."
인스톨 할 때 시스템 권한을 요구하는 프로그램이라면 사용자가 설치 하지 않을 가능성도 있구요^^;
윈도우에서 hosts 파일 설정하는거야 저도 잘 알고 있지만.. ip로 접근하도록 하면 되는 것 아닌가요? ;ㅁ; 구지 도메인을 필수로 설정할 필요가 있는지 저는 잘 모르겠어서요^^;
2010.01.08 14:31:29
Android에서 말씀하신 파일을 수정하기 위해서는 root권한에만 쓰기 권한이 있으니 root권한을 얻으셔야 할것 같습니다.
root권한을 얻는 방법에 대해서는 다른 고수님들이.. 쿨럭..;;;;
root권한을 얻는 방법에 대해서는 다른 고수님들이.. 쿨럭..;;;;
2010.02.01 14:52:03
host 파일 수정 방법
remount 한다.
>adb remount
안드로이드에 있는 host 파일을 받는다.
>adb pull /system/etc/hosts D:\TDPlatform\android_home\backup\
hosts 파일 수정한다.
---------------------------------------
기본적으로 로컬만 등록되어 있음.
127.0.0.1 localhost
---------------------------------------
host 파일을 넣는다.
>adb push D:\TDPlatform\android_home\work\hosts /system/etc/
hosts 파일 수정 확인해보기
>adb -e shell
#cat /system/etc/hosts
remount 한다.
>adb remount
안드로이드에 있는 host 파일을 받는다.
>adb pull /system/etc/hosts D:\TDPlatform\android_home\backup\
hosts 파일 수정한다.
---------------------------------------
기본적으로 로컬만 등록되어 있음.
127.0.0.1 localhost
---------------------------------------
host 파일을 넣는다.
>adb push D:\TDPlatform\android_home\work\hosts /system/etc/
hosts 파일 수정 확인해보기
>adb -e shell
#cat /system/etc/hosts




chmod 로 바꾸면?