Hlavní navigace

Root pro Nexus S není složitý ani zakázaný

Adam Štrauch 1. 7. 2011

Před pár měsíci se mi díky českému zastoupení firmy Google dostal do ruky nový chytrý telefon Nexus S. Neměl jsem moc času si s ním vyhrát na maximum, a tak jste se museli spokojit pouze se základním uživatelským pohledem. To bych nyní rád dohnal a ukázal, že root v telefonu nemusí být vždy bolestný.

Nexus S je telefon vyrobený firmou Samsung, ale s duší od firmy Google. To v praxi znamená, že je mnohem otevřenější než telefony jiné. Naštěstí se blýská na lepší časy a to co je popsáno v odstavcích níže by mohlo brzy platit i pro telefony firmy HTC, která se nechala slyšet, že nové telefony nebude zamykat a nechá tak otevřená vrátka komunitě. To by se mohlo týkat i aktuálních modelů jako je Desire S, který je sice dnes stále nezdolán, ale už další aktualizace by mohla dát zámek paměti pryč. Na to si ještě chvilku počkáme, tak se pojďme věnovat perspektivnějšímu telefonu.

Proti Nexus S který jsem tu měl v březnu je tento trochu jiný. Nechal jsem se zlákat reklamou na Super AMOLED displej, abych záhy zjistil, že Samsungu nestačí výrobní kapacity a Nexus S mám v evropské verzi o kousek tlustší a se Super LCD displejem. Není to vyloženě prohra, Super LCD disponuje lepším rastrem, ale zato černá není černá a barvy nejsou tak kontrastní. Z pohledu hackera pak může nastat problém, když si nahraje do telefonu HBOOT druhého telefonu, který nemá ovladače právě pro ten typ displeje, ale k tomu při běžném rootování nesáhnete. Na praktické rozdíly mezi jednotlivými typy displejů se můžete podívat na android.stackex­change.com.

Jdeme si pro roota

Tento článek nebude obsahovat návod na brutální zásahy do telefonu a krom jednoho bodu, ve kterém na to upozorním, budou všechny změny vratné. Pokud budete telefon z nějakého důvodu reklamovat, tak při správném postupu nebude mít prodejce šanci zjistit, zda byl telefon rootnut či ne. V tomhle je Nexus S maximálně benevolentní. I tak prosím berte na vědomí, že nepěkným přehmatem si můžete zničit systém a i když o něj s největší pravděpodobností nepřijdete (SPL přežije), nenese Root.cz ani já zodpovědnost za škody, které si na základě zde uvedeného návodu způsobíte.

Všechno důležité se u Nexus S děje v HBOOTu neboli SPL (Second Program Loader). To je spuštěno hned po IPL (Initial Program Loader) a je to první softwarová vrstva, která je ochotná brát vstup od uživatele. Jejím úkol je mimo jiné zpřístupnit v relativně surovém stavu paměť telefonu a umožnit uživateli v telefonu nějakou část systému nakopírovat znovu. Nexus S má SPL pro tyto účely zamčenou, ale lze ji ji jednoduše odemknout. Druhým krokem pak je nakopírování vlastní recovery a z té pak instalace programu su a balíčku superuser.apk.

Pokud si dobře pamatujete na článek o rootování HTC Hero, tak v něm je postup přesně opačný a rozhodně ne tak pěkně čistý jako tento. U Hera a mnoha dalších telefonů jeho éry bylo zapotřebí získat roota a pro lepší kontrolu nad telefonem nahrát jinou recovery. Využívala se k tomu většinou bezpečnostní chyba, která byla kritičtější než to, že někdo chtěl roota. Nakonec tohoto postupu začaly využívat zlé aplikace na marketu, které se rády beztrestně zakořenily v systému. Dobrou ochranou běžných uživatelů je v tomto případě S-ON neboli zámek některých částí NAND paměti, který znemožňuje změny v systému. Takové telefony jsou proti podobným praktikám imunní.

Ale jdeme dál, k získání roota budeme potřebovat pár věcí a určitě si je obstarejte, než začnete. Návod bude zaměřen na počítače s Linuxem.

Postupně si všechny archivy s výjimkou su-2.3.6.1-ef-signed.zip rozbalte, budete je záhy potřebovat.

Dále bude potřeba do souboru /etc/udev/rules­.d/51-android.rules doplnit obsah:

SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666" 

Tím by měl být telefon po USB kabelu dostupný pro všechny uživatele. Nesmíme zapomenou restartovat udev:

$ sudo restart udev 

Binárnímu souboru fastboot ještě přidělíme práva ke spuštění:

$ chmod 755 fastboot 

Až to budete mít spusťte soubor android, který najdete v adresáři tools v Android SDK. Klikněte na Available packages a rozklikněte nabídku Android Repository. Zaškrtněte Android SDK Platform-tools. Nakonec klikněte na Install selected a po prostudování potvrďte následující okno. Tím dostanete do adresáře platform-tools program adb, který je potřeba pro komunikaci s telefonem.

A přejdeme ke kopírování recovery.

A teď už s klidnou rukou a vážnou tváří

Během postupu na následujících řádcích přijdete o všechna data v telefonu včetně interní paměti, proto si to nejdůležitější někam nějak zálohujte.

Prvním krokem je nabootování do SPL, což se udělá tak, že vypnete telefon a zapnete ho pomocí tlačítek Power a Volume UP. Objeví se okno s informacemi a nabídkou, kde je možné vybírat pomocí tlačítek na nastavení hlasitosti a potvrzovat tlačítkem Power. Zatím nic nedělejte a připojte telefon USB kabelem k počítači. Teď přejdeme k první a jediné destruktivní činnosti v tomto návodu. Odemkneme zavaděč aby byl ochotnější pracovat s utilitkou fastboot a umožnil nám si hrát s pamětí telefonu. To provedeme tak, že na počítači spustíme program fastboot s parametry:

$ fastboot oem unlock 

Objeví se okno, kde potvrdíte, že chcete telefon odemknout. Pak zavaděč z bezpečnostních důvodů smaže z telefonu všechna data a telefon odemkne.

Máme-li, můžeme nahrát recovery.

$ fastboot flash recovery recovery-clockwork-herring.img 

Do té se pak dostanete zvolením recovery v menu v druhé polovině displeje. Zde v nabídce mounts and storage zvolte mount USB storage. Na počítači se vám objeví nový disk a na něj nakopírujte soubor su-2.3.6.1-ef-signed.zip. Disk opět odpojte a to i na telefonu a přejděte do nabídky install zip from sdcard. Pak vyberte choose zip from sdcard a najděte nakopírovaný soubor. Po potvrzení máte ve svém systému roota a můžete si podat ruku a pohladit telefon.

Pokud nechcete, aby vám tato recovery zmizela, je potřeba ještě připojit oddíl /system v menu mounts and storage, pomocí utilitky adb se k telefonu připojit a upravit práva souboru /system/etc/in­stall-recovery.sh. Ten se totiž postará o to, aby se při dalším bootu vrátila původní recovery. Vzhledem k tomu, že má tato recovery mnohem víc možností než ta původní, asi není důvod si ji držet, ale určitě si tento postup pamatujte, kdybyste telefon vraceli. Program adb najdete v adresáři platform-tools v Android SDK.

# cd platform-tools
# ./adb shell
# cd /system/etc
# chmod 444 install-recovery.sh 

Skript znovu nahodíte změnou práv na 544.

A máme hotovo. Až se vrátíte zpátky do svého Androida, stáhněte si aplikaci ROM Manager, která vám pomůže jednoduše nahrát nejnovější recovery. Pro jistotu ještě můžete použít třeba aplikaci ConnectBot nebo program adb s parametrem shell a ověřit zda roota opravdu máte a to zadáním su do příkazové řádky.

Závěr

V dnešní době už root není u Androida tak důležitý. Dokáže ulehčit třeba aktualizaci recovery, ale pokud vyloženě nechcete taktovat procesor nebo využívat nějaké aplikace, které roota potřebují (třeba Titanium Backup), je vcelku zbytečný. Doby, kdy se podobnými postupy řešit tethering a aplikace na kartě jsou dávno pryč. Na druhou stranu je pořádná recovery základ. Pomůže se zálohou i vymazáním údajů o baterce, které jsou někdy zdrojem problémů s výdrží. Zároveň pomůže, když se něco nepovede nebo když se vám zalíbí třeba CyanogenMod. Nexus S je ale tak otevřený telefon, že i k té recovery můžete přejít až když se něco nepovede.

Návod byl částečně založen na návodu uživatele BlackOtaku, který najdete na XDA fóru. Návodů je na stejném místě hned několik včetně seznamu ROM, které můžete do Nexus S nahrát.

Našli jste v článku chybu?

1. 7. 2011 10:37

Jenda (neregistrovaný)

Za mých mladých let, když jsem si koupil mobil, měl jsem k RTOS vevnitř přístup tak nějak rovnou. Stačilo připojit přes sériák k počítači a mohl jsem přenášet soubory, instalovat J2ME aplikace, používat to jako GSM/GPRS modem… A teď? Na iPhone si nenainstaluju žádnou aplikaci, kterou milostivě nepovolil kdovíjaký úředníček v Apple, tethering závisí na libovůli operátora, na Android si sice aplikace mimo Market nainstaluju, ale stejně nemůžou moc hluboko, protože nemají roota… Roota na svém vlast…

1. 7. 2011 11:57

Jen upozorňuji, že Ubuntu != Linux a popsaný způsob aktualizace udev pravidel jinde fungovat nebude.
Oproti tomu tohle je plně přenositelné:

udevadm control --reload-rules


Vitalia.cz: I církev dnes vyrábí potraviny

I církev dnes vyrábí potraviny

Podnikatel.cz: Platební brány a EET? Stále s otazníkem

Platební brány a EET? Stále s otazníkem

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: Jak koupit Mikuláše a nenaletět

Jak koupit Mikuláše a nenaletět

Podnikatel.cz: Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Lupa.cz: Google měl výpadek, nejel Gmail ani YouTube

Google měl výpadek, nejel Gmail ani YouTube

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Vitalia.cz: Vláknina: Rozpustná, nebo nerozpustná?

Vláknina: Rozpustná, nebo nerozpustná?

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Vitalia.cz: 9 největších mýtů o mase

9 největších mýtů o mase

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Podnikatel.cz: Dárky v podnikání. Jak je uplatnit v daních?

Dárky v podnikání. Jak je uplatnit v daních?

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Vitalia.cz: Chtějí si léčit kvasinky. Lék je jen v Německu

Chtějí si léčit kvasinky. Lék je jen v Německu

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte