넥원 루팅 & 언루팅

|

루팅 http://cafe.naver.com/androiders/194582

언루팅 http://cafe.naver.com/androiders/229779


-------------------------


먼저 아래 마닐라보이 님의 글과 electric 313 님의 글 그리고 네이티리님의 댓글에 너무 감사드립니다. 없는 실력에 넥서스원을 구입하여 루팅이란 언감생심의 길에 빠져 들게 해주신 분들입니다. ^^;


아시는 바 대로 부트로더를 언락하면 warranty에 문제가 생기니까 언락하지 않고 루팅을 하고싶어 아무것도 모르고는 일단 배터리부터 깎아 놓고(!!) 하나씩 따라 하는데 이건 프로요 다운그레이드 부터 안되는 겁니다. (네이티리님 댓글의 CID incorrect!! Update fail!! 현상입니다.) 무언가 해결 방법이 없을까 구글링하며 xda-developers 의 많은 글들을 읽고는 안드로이드 2.1의 여러 버전 별로 passimg.zip 을 만들어 보았지만 방법이 없던 차에 http://forum.xda-developers.com/showthread.php?t=736271 의 글을 읽고 루팅에 성공하였습니다.

--------------------------------------------------------------------------------------------------
주의!!!!>> 지금 부터 이야기하는 아래 내용은 여러 강좌 및 해외 사이트를 보고 실제로 실행해 본 제 경험을 공유하는 차원에서 올린 글이며 이 과정을 따라하는 중에 생기는 모든 문제는 사용자 본인에게 있음을 미리 말씀드립니다. 
-------------------------------------------------------------------------------------------------------------------

1. 루팅 방법  (http://forum.xda-developers.com/showthread.php?t=736271 를 번역해 봅니다.)

-------
준비물
-------
- 락이 걸려있는 (팅 안된) Nexus One
- USB 드라이버를 포함한 최신 Android SDK
ADB 셋업
- "freenexus.zip" 이란 파일 

이 파일은 여기에서 받으세요:
http://multiupload.com/MVT98F5HBY
또는
http://dl.dropbox.com/u/1327667/freenexus.zip
MD5: 947C20222056D7C070733E7FCF85CF15

-------
루팅 절차
-------
1. USB 드라이버를 포함한 최신 Android SDK를 설치 합니다. 
- 마닐라보이님의 글 http://cafe.naver.com/androiders/189114 를 참조하면 됩니다.

2. 다운받은 zip file을 풀어 그 내용물을 SDK의 tools directory 에 풀어 넣습니다. (\android-sdk-windows\tools)
- (원문 추가내용) 모든 초보분들께: freenexus.zip 파일의 내용물은 tools디렉토리 내에 직접 있어야 합니다. 만일 tools 디렉토리 안에 freenexus란 서브디렉토리가 있다면 지우고 압축파일의 내용을 다시 직접 풀어 옮겨 넣으세요. 계속 진행하기 전에 freenexus란 디렉토리가 없는 걸 반드시 확인 바랍니다.

3. 커맨드프롬프트를 엽니다. (시작버튼 - 실행 - "cmd" 입력후 엔터)

4. SDK의 tools directory로 들어갑니다. (cd \android-sdk-windows\tools)

5. 넥서스원의 설정-응용프로그램 - 개발 - USB 디버깅에 체크한 후 USB로 컴퓨터에 연결합니다.

6. 명령 프롬프트에 "adb devices" 라고 입력하면 시리얼 넘버와 함께 연결된 디바이스 목록이 나옵니다. 만일 나오지 않는다면 5번 과정을 다시 확인하거나 USB 드라이버를 다시 설치하세요.

7. 커맨드 프롬프트에서 "freenexus.bat" 을 입력합니다. (필요한 파일들을 /data/local/tmp 로 옮기는 과정입니다.)

8. 다음 명령을 입력합니다:
adb shell
(이제부터 앞에 "$" 프롬프트가 뜹니다.)
$ cd /data/local/tmp

9. 폰에서 wifi를 바로 껐다 켤 수 있게 설정이나 위젯 화면으로 준비합니다.

10. 다음 과정 직후에 wifi를 켤 수 있어야 합니다.

11. 커맨드 프롬프트에 "./freenexus" 를 입력합니다.

12. 직후에 wifi를 켭니다.

13. 그러면 이런 메세지가 보입니다:
[*] Android local root exploid (C) The Android Exploid Crew[*] Modified by ak for HTC Nexus One
[+] Using basedir=/sqlite_stmt_journals, path=/data/local/tmp/freenexus
[+] opening NETLINK_KOBJECT_UEVENT socket
[+] sending add message ...[*] Try to invoke hotplug now, clicking at the wireless[*] settings, plugin USB key etc.[*] You succeeded if you find /system/bin/rootshell.[*] GUI might hang/restart meanwhile so be patient.
13b) (원문 수정 됨) 만일 "permission denied" 에러가 뜬다면 십중팔구는 2번에 있는 빨간글씨의 '모든 초보분들께' 내용을 따르지 않은 것입니다. 이를 확인하기 위해서 "ls -l"을 입력하여 리스트에 있는 freenexus 앞에 "-rwxr-xr-x" 대신 "drwxr-xr-x" 가 보인다면 잘못된 것입니다.

14. "rootshell" 을 입력합니다.
15. 여기까지 성공했으면 그다음 password 를 묻게 됩니다. 만일 아니라면 10번 부터 다시 시도 합니다.

16. password에 "freenexus"라고 입력합니다.

17. 이제 프롬프트에 "#" 가 뜨게 됩니다. -> 지금 루트권한을 획득 한 겁니다.

18. 실수 없이 다음 명령어를 입력합시다: (복사 후 커맨드프롬프트 창에서 오른쪽 마우스버튼으로 붙여넣기 하시면 됩니다.)

./busybox cp busybox /system/bin

chmod 4755 /system/bin/busybox

busybox cp Superuser.apk /system/app

busybox cp su /system/bin

chmod 4755 /system/bin/su

rm /system/bin/rootshell

exit

exit

19. 루트 권한이 유지되었는지 확인합니다.:

adb shell

su

20. su 명령어를 실행하면 폰에서 superuser app이 allowance 확인을 물어옵니다.

21. "#" 프롬프트가 뜹니다. 아니라면 su 를 다시 실행해 보세요.

22. 완료!

-------
덧붙이는 말
-------
루트 권한만 획득하기 원한다면 여기까지 입니다. 커스텀롬을 깔기 원한다면 커스텀 리커버리를 먼저 깔아야 합니다. 가장 쉬운 방법은 마켓에서 "ROM Manager"를 다운로드 받는 것입니다. 엄청난 숫자의 커스텀 리커버리/롬을 까는 방법이 xda에 있습니다.

2. 커스텀 리커버리 및 커스텀 롬 깔기 (수정) 
 
올린이의 말: SLCD 버전의 넥서스원에 ROM manager로 리커버리를 설치할 수 없다는 문제가 있는 듯하다는 댓글들이 있습니다. 저는 AMOLED 버전이라 직접 실행해 보지는 못했습니다만 외국 유저들의 경우에도 그런 일들이 있었던 모양입니다. (이게 디스플레이 버전과 관계가 있는지는 아직은 모르겠습니다.)
 
원글을 보니 수정, 편집 된 부분이 있어 내용 추가하여 올려드립니다. 일반적인 유저라면 B. ROM manager 이용법 을 먼저 실행해 보시고 그게 잘 안된다면 A. 방법을 사용해 보시기 바랍니다. (A. 방법으로 성공하신 SLCD 유저분들이 있다면 댓글로 성공여부를 적어주시기 부탁드립니다.)
 
 A. 리커버리 깔기

 원 글 수정부분: 리커버리를 수동으로 설치하는 것이 더 안전합니다. ROM Manager 로 커스텀 리커버리를 까는 데 문제가 생겼다면 이 방법을 사용하세요. (원글 저자는 시스템 파티션 리마운트 없이 이 방법에 성공했다고 합니다.)

1) recovery-RA-nexus-v1.7.0.1.img (<-클릭) 파일을 다운 받아 SD card의 루트 디렉토리로 옮겨둡니다.
- 주의: 이 파일을 옮기고 나서 대용량저장소를 해제해 두어야 합니다. 아니면, adb push 명령을 사용하여 대용량저장소를 쓰지 않고 넣습니다.

2) SDK tools 디렉토리에 
"flash_image" (<- 클릭) 를 다운로드해서 저장해 둡니다. 
3a) 터미널에서 다음을 실행합니다.
adb push flash_image /data/local/tmp/flash_image
 
3b) 만일 방금 루팅 하고 리부팅하지 않은 상태라면 이 파일을 바로 /system/bin 으로 push 명령을 써서 옮길 수 있습니다. (시스템이 아직 읽기/쓰기 가능한 상태입니다.)
adb push flash_image /system/bin/flash_image

 

4) 다음을 실행합니다.

adb shell
su

 
- 이 시점에서 폰의 수퍼유저 앱의 창이 뜨면 Allow를 누릅니다.
- $ 프롬프트가 # 프롬프트로 바뀌어야 합니다.

5) 다음을 실행합니다.
cd /data/local/tmp (만일 3b 과정을 실행 했다면 대신 cd /system/bin 을 입력합니다.)
chmod 755 flash_image
./flash_image recovery /sdcard/recovery-RA-nexus-v1.7.0.1.img
rm /system/etc/install-recovery.sh
rm /system/recovery-from-boot.p
모든 것이 잘 실행 되었다면 다음을 실행합니다.
rm flash_image
 
6) 리커버리가 설치되었습니다. 트랙볼-볼륨(-)-전원 키를 불러 부트로더로 리부팅(하얀화면) 후 리커버리로 들어가 봅니다.
 
 B . ROM manager 이용법
 
이후에 electric 313 님의 글 [강좌] 커스텀 리커버리 깔기(부트로더언락X) http://cafe.naver.com/androiders/190859 를 읽고 따라해 볼 겨를 도 없이 저는 바로 ROM manager를 받아서 그 이후의 과정을 성공했습니다. 그 글 댓글의 네이티리님의 글을 보면 이 방법도 잘 안되는 것 같습니다. 저는 HBOOT 다운그레이드를 먼저 시도 했었는데 처음부터 부트로더를 언락하지 않으면 그것도 안되는 것 같았습니다. ROM manager 앱을 이용하면 폰만 가지고도 PC 연결 없이 커스텀 리커버리와 커스텀 롬을 깔 수 있게 됩니다. 

대강의 줄거리는 다음과 같습니다. 
- ROM manager 앱 설치
- 앱에서 커스텀리커버리 설치
- 앱에서 리커버리로 리부팅 후 리커버리에서 커스텀 롬 설치

---------
준비물
---------

- 루팅된 넥서스원
- 커스텀 롬파일 ( Kang-O-rama 1.0 b2 버전 http://forum.xda-developers.com/showpost.php?p=7486633&postcount=3433 을 추천합니다. http://djmcnz.batteryboss.org/Kang-o-rama/1.0/Pre%20Release/Kang-o-rama-1.0-b2.zip 에서 받을 수 있습니다.)

- 작업을 시작하기전에 USB 저장소 모드로 폰을 연결 후 위 커스텀 롬 파일들을 SD카드에 넣어둡니다.

----------
진행 절차
----------

1. 일단 루팅글에서 가장 쉬운 방법이라고 이야기 한 ROM manager 앱을 마켓에서 다운로드 받습니다.

2. 받고나서 앱을 실행하면 다시 슈퍼유저 앱에서 allowance 확인창이 뜨고 확인합니다.

3. 목록 중 가장 먼저 있는 Flash ClockworkMod Recovery 를 선택합니다.
   (이 앱에서 사용하는 커스텀 리커버리 인가 봅니다. 우리는 마닐라보이님의 글에 있는 RA 리커버리를 사용하고자 합니다. 일단 ClockworkMod 를 깔지 않으면 다른 리커버리를 선택할 수 없습니다.) 

* 참고: 라구니님의 글 
(루팅후 리커버리가 안되는 분들을 위한 리커버리 모드에 들어가지 않고 커스텀롬 설치하는 방법) (<-클릭) 에 의하면 Rom manager로는 RA 리커버리를 SLCD 버전에 설치 할 수 없다는 보고가 있습니다. SLCD 유저는 위 글을 참조하여 ClockworkMod 리커버리를 사용하시기 바랍니다.

4. confirm 창이 뜨는데 Google Nexus One (GSM) 을 선택합니다. (하나 밖에 없습니다.)
- 다시 superuser request가 뜨면 allow 를 선택합니다.

5. 성공했다는 문구가 뜨고 확인하면 아까 첫번째 목록 아래에 작은 글씨로 current, latest 버전이 보입니다.

AMORED 버전의 유저라면 이 다음 과정을 진행하여 RA 리커버리로 손쉽게 바꿀 수 있습니다. SLCD 유저라면 이후 라구니님의 글 (루팅후 리커버리가 안되는 분들을 위한 리커버리 모드에 들어가지 않고 커스텀롬 설치하는 방법) (<- 클릭)
을 참조하세요.

6. 아래로 쭉 내려가 more recovery 에 보면 목록에 Flash Alternate Recovery가 보입니다. 이걸 선택합니다.
 (이게 우리가 원하는 RA recovery 입니다.)

7. 경고창이 뜨면 확인을 누릅니다. 그러면 알아서 다운로드 받고 성공창이 뜨면 확인을 누릅니다.

8. 이제 목록의 두번째에 Reboot into Recovery 가 있습니다. 이걸 클릭하면 볼륨버튼 키 안누르고 RA 리커버리로 바로 부팅 됩니다.

9. 이후 과정은 마닐라보이님의 글 http://cafe.naver.com/androiders/156393 의 커스텀롬 설치 과정과 동일합니다.

 

저는 문제 없이 이 과정들을 성공했습니다. 만일 잘못된 부분이 있다면 댓글로 남겨 주세요.

다시 한 번 좋은 강좌와 댓글을 남겨 주신 마닐라보이님, electric 313 님, 네이티리님, 라구니님 및 그 외 많은 분들께 감사드리며 긴글 이만 줄이려 합니다. 다른 좋은 것들 발견하면 그때 다시 나누도록 하겠습니다.

 * 추가
1. 위 내용 대로 해도 리커버리에 들어가지 못하시는 분들은 원글에 의하면 매우 드문 경우라고 하며, 이 게시판의 언루팅 강좌를 참고하여 언루팅 후 다시 루팅을 시도해 보시기 바랍니다. (원문의 trouble shooting 이 언루팅 방법과 동일합니다.)

2. SLCD 유저의 경우에 리커버리 설치후 리부팅하여 리커버리로 들어가지 못할 때 또 다른 해결책이 있습니다. 클리앙 toz_ 님의 글 (Nexus One Custom Recovery 비정상 작동시 대처방법) (<-클릭) 을 참고하세요

------------------------------

이전의 제가 올린 강좌(부트로더 언락 없이 KT 정발 Rom 루팅 및 ROM manager 앱을 이용한 커스텀 리커버리 깔기.) 방법 대로 부트로더 언락 없이 루팅 및 커스텀리커버리를 설치하다가 폰이 제대로 부팅이 안되거나 리커버리로 들어가지 못하는 매우 드문 경우가 있습니다. 그 외에도 교품이나 AS를 위해 원래 정발 롬으로 돌아가야 하는 경우도 있을 것입니다. 

제가 직접 해보고 성공한 언루팅 방법을 말씀드립니다. 아무쪼록 넥서스원 사용자분들에게 도움이 되었으면 합니다.
 (이하의 내용은 http://forum.xda-developers.com/showthread.php?t=736271 의 trouble shooting 부분을 참고하여 번역, 수정한 내용입니다.)

-------------------------------------------------------------------------------------------------------------------
주의!!!!>> 지금 부터 이야기하는 아래 내용은 여러 강좌 및 해외 사이트를 보고 실제로 실행해 본 제 경험을 공유하는 차원에서 올린 글이며 이 과정을 따라하는 중에 생기는 모든 문제는 사용자 본인에게 있음을 미리 말씀드립니다. 
-------------------------------------------------------------------------------------------------------------------


<준비물>
- 부트로더 언락 없이 루팅 된 넥서스원 (충분히 충전 되어 있어야 합니다. 중간에 전원이 꺼져 생기는 문제의 책임은 사용자 본인에게 있습니다!!!!)
- KT 정발롬 (
PASSIMG_Passion_KT_KR_2.15.1010.2_FRF91_release_signed.zip)


 * 참고 tip: 저 처럼 시험 삼아 해 보실 분들은 리커버리의 backup/restore 에서 nand+ext backup 을 선택하여 먼저 현재 상태의 롬을 모두 백업해 두시고 진행하는 것을 권장합니다. 언루팅이 되고나면 다시 루팅해서 restore하면 이전 상태로 완전 복구 됩니다.

<방법>
1. KT 정발롬을 다운 받은 후 파일 이름을 PASSIMG.zip (대소문자 구별해서)로 바꿉니다.

롬은 여기서 다운 받을 수 있습니다. (시간에 따라 속도가 느리니 미리 다운 받은 후 시작합시다.)


*추가: 위 사이트 접속이 안된다는 댓글이 있었습니다. 만일 다운로드가 안되면 여기서 받으세요.

2. SD card의 루트 디렉토리에 이 PASSIMG.zip 파일을 옮깁니다.

3. 폰과 PC의 연결을 해제하고 트랙볼-볼륨(-)-전원키를 동시에 계속 눌러 부트로더모드(흰 화면)가 나오면 손을 뗍니다.

4. 이후 부트로더가 PASSIMG.zip 파일을 분석한 후 계속 확인 여부를 물으면 볼륨(+) 키를 눌러 yes를 선택합니다.

5. 리부팅하고 나면 폰이 완벽하게 지워지고 (박스에서 꺼낼 때와 같은) 출시 기본상태가 되어 처음 살 때의 감동을 느낄 수 있습니다.(!!)

6. 다시 루팅 하려면 이전의 제 글 방법을 다시 실행하면 됩니다.



참고로 부트로더 언락하신분들은 부트로더 락 상태로는 다시 돌아 갈 수 없는 것으로 알고 있습니다. 이 방법이 부트로더 언락방법으로 루팅한 경우에도 적용되는지는 직접 실행해 보지 않아 잘 모르겠습니다.

이전 글에 댓글 달아주신 모든 분들께 감사드립니다. 아무쪼록 즐거운 넥서스원 생활 하시길 바라며 좋은 것 보면 또 나누도록 하겠습니다.
신고

'Android 개발 > 팁 / 활용정보' 카테고리의 다른 글

adb logcat  (0) 2011.05.31
google map api  (0) 2011.05.18
넥서스원 2.2.1 용 기본 어플 몇개  (1) 2011.04.19
루팅후 할일..  (0) 2011.04.13
넥원 루팅 & 언루팅  (0) 2011.04.13
어플 sdcard 설치  (0) 2011.04.13
Trackback 0 And Comment 0