Mis aga see müstiline rootimine on, mida see teeb ning miks seda üldse vaja on? Miks osad kasutajad vahetavad telefoni operatsioonisüsteemi välja teise vastu, küsib Photopointi ajaveeb.
Kõigest sellest ning natuke muudest asjadest räägime kohe selles artiklis. Ütlen ka kohe ette ära, et selles artiklis ei tule täpset juhendit, kuidas sinu Androidiseadmes root-ligipääs saada või kuidas teine operatsioonisüsteem paigaldada.
Rootimine: mis see on?
Rootimine on protsess, kus telefonis või tahvelarvutis olevat operatsioonisüsteemi muudetakse nii, et kasutaja saaks selle üle täieliku kontrolli.
Teisisõnu, saada üle piirangutest, mis tootjad seadmele panevad ning laiendada süsteemi funktsionaalsust. Äärmisel juhul paigaldada ka uus operatsioonisüsteem.
Ma teen kohe ka ühe asja selgeks: rootimine EI TÄHENDA automaatselt tarkvara väljavahetust, vaid pelgalt piirangute eemaldamist. Samas ei ole uue operatsioonisüsteemi paigaldamine võimalik root-kasutaja ligipääsuta.
Miks seda protsessi rootimiseks kutsutakse? Kuna Androidi operatsioonisüsteem kasutab Linuxi kernelit (kernel on sild riistvara ning reaalse tarkvara vahel ja koordineerib nendevahelist tööd) ning root-kasutaja Linuxi operatsioonisüsteemis tähistab kasutajat, kellel on kõige rohkem õigusi. See on nagu Administrator-taseme kasutaja Windowsi maailmas.
Osad Androidiseadmed tulevad juba tehasest välja niimoodi, et root-kasutaja ligipääs on olemas. Enamusel see aga puudub, kuid tootjal ei ole piiranguid peale pandud ning root-kasutaja ligipääs on paari minutiga saavutatav.
On ka tootjaid, kes taunivad seda lähenemist, kuid reaalselt nad selle vastu ei saa, sest alati leidub moodus piirangutest mööda pääsemiseks.
Mis see rootimine siis ikkagi on? Proovin seda võimalikult lihtsalt seletada. Androidi operatsioonisüsteemis on programmide õigused piiratud. See tähendab, et need ei saa iseseisvalt teisi programme käivitada, süsteemifaile muuta ega suhelda otse riistvaraga. Sellisel juhul proovitakse seadmesse laadida SU programm, mis töötab root-kasutajana ning saab neid õigusi ka teistele programmidele jagada.
Erinevalt üldlevinud arusaamast, SU ei tähista mitte superuser-programmi (isegi kui programmi nimi on Superuser), vaid switch userit ehk programmi, mis saab jagada teistele programmidele privileegidega kasutaja õigusi.
Kuidas rootimist teostatakse?
Bootloader on pisike programm, mis laetakse enne operatsioonisüsteemi. See programm on olemas igas arvutisüsteemis, olgu see siis Androiditelefon, iSeade või PC.
Sisuliselt on tegu programmiga, mis juhendab operatsioonisüsteemi kernelit end laadima. Bootloader tuleb enda eraldi modifitseerimiskeskonna ning vigade tuvastamise süsteemiga. Kuna bootloader laetakse enne operatsioonisüsteemi, siis on see protsessori, emaplaadi põhine ning seetõttu ei ole universaalset juhendit, kuidas seda kasutada.
Recovery on pisike operatsioonisüsteem, mis töötab Androidist eraldi, kuid on igas Androidiseadmes olemas.
Üldjuhul on see paigaldatud seadme mälus eraldi partatsioonile. Recovery režiimi laadides ei käivitata tüüpilist Androidimaailma ning selles ei kehti ka kasutajapõhised piirangud.
Recovery süsteemis on sul täielik kontroll telefoni üle. Saad kustutada /data/ partitsiooni sisu (tehase algseadmete taastamine) ning lisada operatsioonisüsteemi uuendusi.
Viimased peavad esiteks asuma /sdcard/ partitsiooni juurkaustas ning olema tootja poolt kinnitatud. Seetõttu ei saa me ka kolmanda osapoole operatsioonisüsteemi lisada, kuid tootja uuenduste lisamine on võimalik.
Kõikides juhendites, mis internetis liiguvad, on viide ADB-le. ADB on lühend, mis on tuletatud programmi nimest: Android Debug Bridge. See programm on osa Androidi SDK-st (Software Development Kit) ehk arendustarkvarast.
Lihtsustatult öeldes: see pakub terminalil baseeruvad kasutajaliidest, et ühendada arvuti Androidi failsüsteemiga. Kuna Android baseerub Linuxil, siis tihti on vaja terminali, et teatud käske telefonile saata.
Enamus juhtudel saab seda teha terminali emulaatoriga otse telefonilt, kuid arvutist on see tükkmaad mugavam.
Tuleme nüüd rootimise protsessi juurde uuesti tagasi. Kõige lihtsam variant selle teostamiseks oleks paigaldada Recovery režiimis Androidi operatsioonisüsteemi SU programm, mis saaks hiljem teistele programmidele root-kasutaja ligipääsu jagada.
Miks just Recovery režiimis? Just seetõttu, et Androidi operatsioonisüsteemi üles laadides ei ole väljaspoolt root-kasutaja õigusega programmil võimalik süsteemi partitsioonile andmeid kirjutada. Aga root-õiguse saamiseks peab olema meil programm, mis seda annaks (kuna iseseisvalt nad seda omistada ei saa). Recovery režiim toimib aga väljaspool Androidi operatsioonisüsteemi ning seal piiranguid ei ole.
Nüüd aga põrkame järgmise probleemi otsa. Tootja poolt kaasa pandud Recovery ei tunnista teisi koode, mis ei ole nende poolt kinnitatud. Selle jaoks oleks vaja tootja poolt kaasa pandud Recovery välja vahetada millegi vastu, mis lubaks seda kõike. Kuidas aga seda teha?
Ainuke võimalus selle teostamiseks on, kui bootloader ei ole lukustatud. Osad tootjad jätavad oma seadmetel bootloaderi lahti, kuid enamus lukustavad selle. Lukustamata bootloaderi puhul me saame anda seadmele läbi ADB-liidese käsu, et bootloader lõplikult lahti teha.
Lukustatud bootloaderi puhul on asi keerulisem. Sellisel juhul bootloader tunnistab ainult neid käske, mis on krüpteeritud, kasutades selle seadme jaoks loodud võtit. Üldjuhul tootjad kaitsevad neid kiivalt, kuid viimasel ajal on suhtumine muutuma hakanud. Näiteks HTC telefonide puhul on võimalik tootjalt saada sinu telefoni jaoks vajalik võti ning bootloader luku alt lahti päästa.
HTC, näiteks, on küll lihtsustanud enda seadmetel rootimise protsessi, kuid seda tehes peab kasutaja nõustuma ka faktiga, et seadme garantiitingimusi on rikutud ning tootja ei vastuta tagajärgede eest.
Kui bootloader on lukustatud, süsteemile ligi ei pääse ning rootimiseks esmapilgul võimalus puudub, siis alati jääb mõni tagavaravariant üle. S.t, tarkvara ei ole kunagi täiuslik ning enamusel seadmetest, varem või hiljem, avastatakse mõni turvaauk.
Sellisel juhul petetakse mõni olemasolev süsteemiprogramm ära teisele programmile root-õiguste andmise osas või leitakse tagauks bootloaderis.
Selline lähenemine jääb alati viimaseks võimaluseks, kuna pole kerge (sellest tulenevalt mõnikord öeldakse, et rootimine on häkkimine, kuna põhimõtteliselt seda ka tehakse).
Mitteametlikud operatsioonisüsteemid
Kui sul on võimalik ligi pääseda Androidi operatsioonisüsteemi failidele ning neid ka muuta, siis võib ju neid samahästi ka välja vahetada.
Androidi kõige suurem eelis ongi ju see, et see on avatud lähtekoodiga. Igaüks, kes soovib, võib Google'ilt alla laadida baasoperatsioonisüsteemi ning selle seadistada enda seadme järgi ning seda ka kasutada.
Kuna enamusel meist need teadmised ning oskused puuduvad, siis me kasutame teiste poolt valmis tehtud tarkvara.
Põhjus, miks seadmete tootjad seda ei armasta, on lihtne. Kui mingil põhjusel mitteametlik tarkvara ei tööta, siis nemad ei saa vastutada selle eest, olgugi, et füüsiliselt on seadmel nende logo.
Samas, mõnikord on mitteametlik operatsioonisüsteem mugavam kui tootja poolt valmis tehtu. Miks me seda siiski soovime teha? Ühest küljest me saame suurema kontrolli süsteemi üle. Loomulikult on see võimalik ka lihtsalt rootitud seadmega. Samas sellisel juhul ei tule seadmega kaasa tüütuid lisaprogramme, mis nii mõnelgi seadmel vähesegi mälu ära võtavad.
Toome väga lihtsa näite: telefonil on programmide jaoks eraldatud minimaalne ruum ning paljusid ei saa sundida töötama ka SD-kaardilt. Samas on seadmega kaasa pandud lisaprogrammid, mida ma eal ei kasuta, kuid need on operatsioonisüsteemi funktsioonidele sisse integreeritud.
Root-kasutajana ma saaksin küll need eemaldada, kuid siis muutub operatsioonisüsteem ebastabiilseks. Samas, kui ma paigaldan näiteks teise operatsioonisüsteemi, kus selline "lollus" on vahele jäetud, on probleem lahendatud.
Erinevalt tootjate poolt valmis tehtud operatsioonisüsteemist ei garanteeri keegi sinule, et kolmanda osapoole tarkvara töötab laitmatult ning ei vastuta tulemi eest. Vale versiooni, teisele seadmele mõeldud või mittestabiilset operatsioonsüsteemi seadmesse paigaldades on oht seade nn brickida (bricked, tähistab telliskivi, telliskiviks muutma. Telefon on sama tark kui telliskivi).
Samas on ka grupeeringuid, kus on rõhk pandud paindlikkusele ning maksimaalsele kasutaja mugavusele ning dokumenteeritakse ka erinevate tarkvaraversioonide muudatusi.
Üks selline on näiteks Cyanogenmod, kes pakub täpseid juhendeid ning stabiilset tarkvara, mis on disainitud just spetsiifilise seadme riistvara arvestades.
Millega veel arvestada, kui seade on rootitud
Kui sul on seade rootitud, kuid kasutad tootja poolt tehtud tarkvara (stock ROM), siis peaks teadma ka paari nüanssi.
Esiteks, tarkvarauuendused operatsioonsüsteemile kaotavad kasutajal root-staatuse. Mõnel juhul telefon pole isegi võimeline tarkvarauuendusi leidma, kuid need on harvad. Teiseks, kui recovery on midagi muud kui see, mis tootja on ette näinud, siis automaatne uuenduste paigaldamine ei toimu. Android leiab küll uuenduse üles ning laeb alla, aga paigaldada ei ole võimalik.
Sellisel juhul on paar võimalust: taastada esialgne recovery või tarkvarauuendus käsitsi paigaldada. Mõlemat pidi tuleb root-protsessi uuesti algusest pihta alustada.
Ehk siis…
Androidiseadme rootimine ei ole mitte midagi müstilist. Ning erinevalt üldlevinud arusaamast ei ole see tegevus illegaalne ega seostu kuidagi ka piraatlusega.
Loomulikult, nagu me nüüd teame, ei seostu rootimine ka automaatselt operatsioonisüsteemi väljavahetamisega.
Näiteks artikli autor kasutab rootitud HTC One X telefoni, millel on tootja poolt kaasa pandud operatsioon. Lihtsalt tarkvara ümberseadistamise nimel ning kasutusmugavuse juurde saamise nimel tuli süsteemifailidele korra ligi pääseda.
Ärge arvake ka, et kõik seadmete tootjad keelavad seda. Tegelikult on suurim probleem pigem teiselpool suurt lompi asuvate telekomiettevõtete juures. Nimelt sealsed gigandid, näiteks AT&T, Sprint jms, tahavad kasutajatele piiranguid peale suruda, vastavalt sellele, kuidas neil soodsam ning mugavam on.
Riistvaratootjad see-eest, nagu näiteks HTC, toetavad Cyanogenmodi laadseid grupeeringuid, kuna sealt tuleb teinekord väga huvitavaid ning effektiivseid lahendeid.Kui sa soovid teada saada, kuidas just Sinu telefonil rootimise protsess läbi viia, siis selleks saame anda paar viidet. Esimene on Eesti oma Androidi kommuun.
Teine variant, kui inglise keel piisavalt käpas, on Google'i otsingumootorisse sisse tippida
NB: Artikli autor, Photopoint ega Delfi ei vastuta tagajärgede eest. Kui sa ei ole kindel, mida teed, ega saa juhistest aru, siis ära parem üldse proovigi seda protsessi läbi viia.
Jälgi Forte uudiseid ka Twitteris!