Ten temat przedstawia tutorial mojego autorstwa, który opisuje jak przeprowadzić zabieg rootowania smartphona opartego na systemie Android na przykładzie HTC Desire Z z systemem Android 2.3.3. Tutorial ten jest dedykowany osobom, które nigdy nie miały styczności z takimi zabiegami.
Co oznacza root? Jako root określa się dostęp do wszystkich zakamarków systemu, można to porównać do konta (uprawnień) administratora w Windows. Kiedy nasz smarphone ma przeprowadzonego roota możemy zmieniać samemu wersje oprogramowania, stosować nieoficjalne dystrybucje (jak np MIUI czy Cyanogenmod), czy np. zmieniać (oczywiście przez następną modyfikację) taktowanie procesora w naszej maszynce.
Chcę zaznaczyć, że tutorial ten nie powstał by bez pomocy kolegów Sony156 oraz JoHnNy08PL, a także użytkownika forum http://forum.android.com.pl o nicku 94michal7, który pozwolił korzystać z dobroci jego własnej pracy.
Wszelkie czynności podejmujesz na własną odpowiedzialność. Nikt po za Tobą nie odpowiada za ewentualne niepowodzenie.
Zaczynamy.
1. Pobieramy i rozpakowujemy np na pulpit
http://www.wrzuc.to/Ha3saL.wt
bądź:
http://dev-host.org/...kh/root_htc.rar
Rozpakowaną zawartość archiwum "system32" (4 pliki) wrzucamy do folderu systemowego "windows\system32", zaś zawartość archiwum HTC (folder o nazwie "HTC) bezpośrednio na dysk C.
2.Uruchamiamy w telefonie moduł debugowania
(ustawienia-aplikacje-tworzenie, odhaczamy "ptaszek" przy opcji "debugowanie usb").
3. Podpinamy telefon do komputera za pomocą kabla USB.
4. Uruchamiamy na komputerze "konsolę CMD"
(Start-uruchom, wpisujemy "cmd", zatwierdzamy klawiszem [enter])
5. Wpisujemy komendę
adb devices
Aby uzyskać mniej więcej coś takiego
List of devices attached
SH17HRT02469 device
6. Wpisujemy komendę
adb shell cat /dev/msm_rotator
Aby uzyskać
/dev/msm_rotator: invalid length
7. Wpisujemy komendy, każdą oddzielając przyciskiem [enter]
adb push C:\htc\fre3vo /data/local/tmp
adb shell
chmod 777 /data/local/tmp/fre3vo
/data/local/tmp/fre3vo -debug -start FAA90000 -end FFFFFFFF
Aby uzyskać (na liście będzie więcej pozycji zaczynających się na " Scanning region")
Buffer offset: 00000000
Buffer size: 8192
Scanning region fb7b0000...
Scanning region fb990000...
Scanning region fba90000...
Potential exploit area found at address fbb4d600:a00.
Exploiting device...
8. Wpisujemy komendy, każdą oddzielając przyciskiem [enter]
adb shell
exit
9. Wpisujemy komendy, każdą oddzielając przyciskiem [enter]
adb push C:\htc\misc_version /data/local/tmp/misc_version
adb shell chmod 777 /data/local/tmp/misc_version
adb shell
/data/local/tmp/misc_version -s 1.33.405.5
Aby uzyskać
--set_version set. VERSION will be changed to: 1.33.405.5
Patching and backing up partition 17...
10. Wpisujemy komendę
sync
11. Wpisujemy komendę
dd if=/dev/block/mmcblk0p17 bs=1 skip=160 count=10
Aby uzyskać mniej więcej (wartości będą się różnić w zależności od osiągniętej prędkości kopiowania)
1.33.405.510+0 records in
10+0 records out
10 bytes transferred in 0.001 secs (10000 bytes/sec)
12. Wpisujemy komendę
exit
13. Wpisujemy komendę (po zatwierdzeniu do telefonu zostanie przekopiowany plik ważący ponad 200MB, przez 6-10 minut konsola CMD nie będzie reagowała na nasze komendy)
adb push C:\htc\1.34.405.5_PC10IMG.zip /sdcard/PC10IMG.zip
14. Wpisujemy komendę:
adb reboot bootloader
15. Chwytamy za telefon. Nie odłączamy go od komputera! Na telefonie pojawi się napis “Bootloader” podświetlony na niebiesko. Naciskamy przycisk [włącz/wyłącz].
16. Telefon zapyta się czy wykonać operacje. Wciskamy przycisk [zwiększ głośność].
17. Telefon poprosi o włączenie systemu. Wciskamy przycisk [włącz/wyłącz].
18. Po włączeniu systemu będziemy musieli na nowo ustawić opcje personaliacji. Wybieramy tylko język, zaś resztę pomijamy.
19. Ponownie uruchamiamy moduł debugowania (patrz pkt. 2).
20. Dla pewności wykonujemy czynności z pkt. 5.
21. Wpisujemy komendy, każdą oddzielając przyciskiem [enter] (po wprowadzeniu większości z linijek zostanie przekopiowany inny plik, co objawi się takim samym brakiem reakcji jak w pkt. 13, będzie to trwało jednak o wiele krócej)
adb install C:\htc\AndroidTerm.apk
adb push C:\htc\busybox /data/local/tmp/
adb push C:\htc\gfree /data/local/tmp/
adb push C:\htc\rage /data/local/tmp
adb push C:\htc\root /data/local/tmp/
adb shell chmod 0755 /data/local/tmp/*
adb push C:\htc\su /sdcard/
adb push C:\htc\Superuser.apk /sdcard/
22. Przechodzimy do telefonu. W menu z aplikacjami pojawiła się nowa ikonka: “Terminal Emulator”. Uruchamiamy ją.
23. Wpisujemy komendę
/data/local/tmp/rage
Aby uzyskać (na końcu listy)
Forked xxxxxx childs
24. Dotykamy przycisk [MENU] na telefonie. Z listy wybieramy polecenie “Reset Term”, co zamknie “Terminal Emulator”.
25. Uruchamiamy “Terminal Emulator” ponownie. Wyskoczy informacja o błędzie i konieczności zamknięcia aplikacji. Dotykamy “Wymuś zamknięcie”.
26. Uruchamiamy “Terminal Emulator” raz jeszcze, tym razem skutecznie.
27. Wpisujemy komendę
/data/local/tmp/gfree -f
28. Wpisujemy komendę (po której może pojawić się błąd, który jednak nam nie przeszkadza)
/data/local/tmp/root
29. Wpisujemy komendę:
sync
30. Przytrzymujemy przycisk [włącz/wyłącz]. Dotykamy na liście "uruchom ponownie".
Aby sprawdzić czy zabieg przebiegł pomyślnie uruchamiamy znany nam już “Terminal Emulator” i wpisujemy komendę
su
Jeśli pojawił się nam "hash"
#
To znaczy, że wszystko jest w porządku