[스크랩] 루팅 방법
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. 리커버리 깔기
원글 수정부분: 리커버리를 수동으로 설치하는 것이 더 안전합니다.
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 의 커스텀롬 설치 과정과
동일합니다. 저는 문제 없이 이 과정들을 성공했습니다.
* 추가
1. 위 내용 대로 해도 리커버리에 들어가지 못하시는 분들은 원글에 의하면 매우 드문 경우라고 하며,
이 게시판의 언루팅 강좌를 참고하여 언루팅 후 다시 루팅을 시도해 보시기 바랍니다.
(원문의 trouble shooting 이 언루팅 방법과 동일합니다.)
2. SLCD 유저의 경우에 리커버리 설치후 리부팅하여 리커버리로 들어가지 못할 때 또 다른 해결책이 있습니다.
클리앙 toz_ 님의 글 (Nexus One Custom Recovery 비정상 작동시 대처방법) (<-클릭) 을 참고하세요.