Преглед садржаја:
Волимо да вам поставимо питања. Увек је добра ствар када једни другима можемо да помогнемо, а сами учимо ствари када тражимо одговоре. Иако не можемо да нађемо времена да на све њих одговоримо, понекад се постави довољно питање да заслужује детаљан одговор.
"Шта значи корен?" је једно од тих питања. Концепт је за неке од нас можда једноставан, али за многе људе који нису проводили време бавећи се Андроидом или било којим другим оперативним системом заснованим на дозволама, нешто је о чему треба да постављају питања. Покушаћу да одговорим на све најбоље што могу.
Дозволе
Пре него што дефинишемо роот, важно је да схватимо зашто он постоји и како функционише. То је зато што Андроид користи дозволе (тачно засноване на Линуку) у структури датотека. Свака датотека, свака мапа и свака партиција има скуп дозвола. Ова дозвола одређују ко може да чита датотеку (погледа или приступи садржају без мењања), упише у датотеку (може да промени садржај те датотеке или створи нову датотеку у фасцикли или партицији) и изврши датотеку (покрените датотеку ако је тип који се може покренути, попут апликације). То се врши на основу корисника и дозвола - одређени корисници имају приступ, док корисници који немају права дозволе имају приступ.
Када први пут подесите телефон и први пут га укључите, додељује вам се кориснички ИД. Ако се други корисник пријави преко Гоогле-а, њему се додељује други кориснички ИД. Када се апликација инсталира на ваш телефон, додељује јој се и кориснички ИД. Сам систем је корисник и други процеси које треба да се покрећу на вашем телефону могу имати свој кориснички ИД. Корисник је све што може направити било коју датотеку на вашем Андроиду.
Систем корисника и дозвола је како Андроид прати ко може шта да ради.
Рецимо да инсталирате апликацију за размјену порука. Када га инсталирате, додељује му се кориснички ИД. Такође добија место на властитој партицији података, којој само он има приступ. Имате дозволе за извршавање апликације, а када се апликација покрене има дозволу за приступ сопственој фасцикли и подацима. Апликација такође може затражити дозволу за приступ стварима попут вашег адресара или СД картице или библиотеке фотографија. Ако овим захтевима кажете да (или ако пристајете на дозволе за старије верзије Андроида), кориснички ИД апликације добија дозволу за датотеке са подацима о тим стварима, што значи да може да погледа мапу података и њен садржај и евентуално промени њих или додајте нове датотеке. Апликација не може да приступи ниједној датотеци података на коју нема дозволу „прегледавања“. То значи (у нашем примеру) да не може радити ствари попут прегледа базе података са подешавањима или приступа фасцикли са подацима друге апликације. За ово се често користи термин песковник - апликације се налазе у песковнику и могу се репродуковати само у песковницима који имају дозволу да буду.
За датотеке које су програми и могу се изводити (попут апликација), примењује се исти модел дозвола. Ваш кориснички ИД има дозволу за покретање апликација које сте инсталирали док сте пријављени. Корисник система има дозволу за покретање истих, а други корисници на нивоу система могу имати приступ апликацијама или одређеним процесима које апликације користе. Остале апликације не могу да покрену апликације које немају дозволу за покретање. Ако сте додали секундарног корисника, они немају приступ вашим апликацијама или датотекама и обрнуто. На вашем телефону се налазе датотеке, фасцикле и апликације за које ваш ИД корисника нема дозволу за преглед, промену или покретање. Обично ти делови Андроида захтевају дозволе на нивоу система (системски ИД корисника) да би учинили било шта, а ви нисте корисник система или корисник који има дозволе на нивоу система.
Пребацивање дозвола
Иако је технички могуће променити начин на који се телефон покреће и датотеке које користи за покретање покретаног система и додељивање корисничког ИД-а повишеним дозволама, то није сигурно ни практично. Али Андроид (и већина система заснованих на Унику или Линуку) имају оно што се зове роот корисник и подржавају СубститутеУсер бинари (размишљајте о бинарном облику као малој апликацији) да бисте променили корисничке ИД-ове. Они се користе за администрацију система на основном нивоу.
Будући да људи који су направили ваш телефон не желе да имате једноставан приступ ИД-у коријенског корисника - а нису сви разлози себични, јер штити и вас и ваше приватне податке - бинарни систем СубститутеУсер није укључен у већину саставака Андроид. Без СубститутеУсер, не можемо пребацити наш кориснички ИД. Већина ствари на нивоу система Андроид има, узгред, слична једноставна имена. Језграна заштита (датотеке у програму за покретање и / или у самом језгру) такође су изграђене на начин да спрече да мењате корисничке ИД-ове као део СЕЛинук-а (С ецурити - Е нханцед Линук - рекао вам је да су имена једноставна) кернел модуле. Неки телефони (Самсунгов Кнок пада на памет) имају додатну заштиту, а скоро све компаније које праве Андроиде захтевају да би, да би извршиле промене, програм за покретање система морао бити откључан како би се те датотеке могле променити и омогућити вам да мењате корисничке ИД-ове. Неки телефони, попут БлацкБерри Прив-а, чак иду корак даље и неће се покренути ако нешто променимо (чак и ако можемо).
Да бисте постали роот, потребан вам је начин да промените свој кориснички ИД.
Једном када прођемо кроз све то - било откључавањем покретача пуњења овлаштеним средствима или употребом неке врсте експлоатације - можемо поставити СУ бинарни уређај (СубститутеУсер) на место које може да ради када се позива да се покрене - то се зове ПАТХ. Ако је било која апликација у ПАТХ-у вашег корисничког ИД-а, покренут ће се без да тачно каже систему гдје се налази. Такође морате да се уверите да се СУ бинарно налази на месту где ваш кориснички ИД има дозволу за извршавање (покретање) датотека. Било којој другој апликацији (Гоогле Плаи има доста апликација за коју су потребна дозвола за роот) такође ће требати исти приступ. Када користите метод за корење свог телефона, све ово су поређали људи који су изградили роот метод.
Након што све буде на месту, можемо покренути СУ бинарну датотеку (или нека друга апликација може покренути СУ бинарну датотеку).
Добијање роот приступа
Ту долази коријен. Бинарни СУ користи заставе када је покренут како би рекао систему на који кориснички ИД желите да се пребаците. На пример, ако на свом Убунту рачунару покренем СУ бинарну датотеку попут ове „су Јим -ц нано“, извршићу нано команду као корисник Јима (након уноса Јим-ове лозинке). Ако покрећете СУ бинарну датотеку без застава или аргумената, пребацује вас на роот корисника. Обично би вам требало да унесете лозинку, али пошто је „роот“ неискоришћени корисник на Андроиду, он нема лозинку. Извођењем команде "су" пребациће вас на кориснички роот и доделити вам кориснички ИД од 0 и ставити вас у роот групу. Сада сте Супер корисник.
Као Супер корисник можете направити било шта са било којом датотеком, мапом или партицијом на вашем Андроиду. Под било чиме, мислимо буквално било шта. Можете уклонити заштитне програме и такође можете уклонити кључне системске датотеке које прекидају ваш телефон. Такође можете да урадите ствари на хардверу као што је промена фреквенције ЦПУ-а и заувек уништите телефон.
Роот је супер корисник, који може све. И нешто мислимо.
Апликације могу учинити исту ствар. СУ се смешта тамо где је у апликацији ПАТХ и свака апликација може да је назове и покрене. Та апликација тада има Супер Усер дозволе и на било којем месту на вашем телефону може учинити било шта што жели. Због тога људи који су направили ваш телефон заиста не желе да имате овај ниво приступа, а компаније које вам омогућавају да откључате програм за покретање система и промените ствари и даље не постављају СУ бинарни уређај на ваш телефон. Приступ роот-у без начина да се контролише ко или шта може користити је опасно за софтвер вашег телефона и ваше личне податке.
Због тога морате инсталирати апликацију која вас присиљава да омогућите роот приступ било када када или друга апликација покуша да позове дозволе Супер корисника. У већини случајева када користите роот метод за свој телефон биће укључен један, заједно са неким другим корисним бинарним датотекама као што је сет алата БусиБок. Ако сте ствари радили ручно, мораћете сами да их инсталирате. СуперСУ би Цхаинфире у Гоогле Плаи-у је добар почетак.
Парчићи
Многи телефони и неке роот методе раде нешто другачије (Андроид 4.3 донио је пуно промјена) и захтијевају скрипте или даемон (видјет ћете ријечи попут даемонсу или су.д споменутог), умјесто да једноставно баце СУ бинарну датотеку на своје мјесто. Користе се за позивање СубститутеУсер тако да можете прећи на роот корисника баш као и сирови бинарни метод. Људи који су смислили како да покрену ваш телефон решили су све ово и то ће радити исто на страни окренутој према кориснику.
Такође је могуће „темп-роот“ неке андроиде. То значи да можете имати дозволе Супер корисника и урадити неколико ствари које морате учинити, али поновно покретање уклања роот приступ. Исто тако, можете имати „схелл-роот“ коме можете приступити роот кориснику само путем адб са свог рачунара.
На крају, желим нагласити да ако имате ова питања, морате размислити да ли сте спремни да имате укоријењени Андроид. Нисмо се шалили кад смо рекли да је лако упропастити телефон СуперУсер приступом. Нема разлога да вас се стиди да морате мало прочитати или поставити још неколико питања пре него што учините ствари које вам могу сломити телефон или дати некој случајној апликацији роуге приступ свим подацима.
Због тога смо овде.