A Magisk fejlesztője két nagy áttörést ért el: támogatja a rendszergazdai és logikai partíciókat a Google Pixel 3 és Pixel 3a számára Android Q rendszeren.
A Google még márciusban kiadta az első Android Q bétát, és gyorsan a Magisken keresztüli root hozzáférést is elérhetővé vált a Google Pixel és a Google Pixel 2 számára. A Google Pixel 3 azonban nem rootolható Android Q rendszeren, mert a Magisk fejlesztője, az XDA Recognized Developer topjohnwu, ami szükséges ahhoz, hogy kitaláljuk, hogyan kell dolgozni az új logikai partíció-elrendezéssel. Az Apple-nél eltöltött új gyakorlatával topjohnwunak kevesebb ideje volt a Magisken dolgozni, de ez nem akadályozta meg abban, hogy két nagy áttörést érjen el a fejlesztésben. A legújabb Canary kiadásban a Magisk már támogatja a rendszergazdai jogot, ami megnehezíti az alkalmazások számára a root észlelését. hozzáférést, és támogatja a logikai partíciókkal rendelkező eszközöket is, mint például a Pixel 3 és a Pixel 3a XL sorozat. Android Q.
Google Pixel 3 fórumokGoogle Pixel 3 XL fórumok
Google Pixel 3a fórumokGoogle Pixel 3a XL fórumok
Google Pixel 3 és Pixel 3a logikai partíció támogatása Android Q rendszeren
Annak érdekében, hogy segítse a fejlesztőket az Android AOSP-verzióinak tesztelésében a meglévő eszközökön, a Google általános rendszerképeket (GSI) bocsát ki, amelyek a Project Treble-kompatibilis eszközökön (minden olyan eszközön) indíthatók. Android 9 Pie vagy újabb verzióval indították el.) A GSI telepítéséhez fel kell oldani a rendszerbetöltőt, ami nem biztos, hogy minden eszközön lehetséges, és a felhasználó törlése után a rendszerképet fel kell villantani a gyorsindítás során adat. Az Android Q rendszerben a Google új funkciót vezet be, az úgynevezett Dinamikus rendszerfrissítések amely lehetővé teszi a fejlesztők számára, hogy a rendszerbetöltő feloldása vagy az adatok törlése nélkül indítsák el a GSI-t. A dinamikus rendszerfrissítések támogatása érdekében az eszköznek rendelkeznie kell logikai partíciókkal, amelyek dinamikusan átméretezhetők, hogy helyet biztosítsanak a GSI telepítésének. A Google Pixel 3, a Google Pixel 3 XL, a Google Pixel 3a és a Google Pixel 3a XL rendelkezik logikai partíciókkal az Android Q bétaverzióján, bár csak a Pixel 3 és a Pixel 3 XL támogatja a DSU-t. Ennek ellenére a partíciószerkezet radikális változása miatt nem működött a Magisk.
Amikor topjohnwu határozott, semmi sem akadályozza meg abban, hogy root hozzáférést szerezzen. Épp a napokban jelentette be, hogy sikeresen rootolta Pixel 3 XL-jét Android Q béta 4-en. Elkötelezettsége leírása itt elmagyarázza a logikai partíció támogatásának technikai részleteit, de ami fontos, az az, hogy a Magisk már telepíthető logikai partíciókkal rendelkező vagy anélküli eszközökre.
System-as-Root támogatás
Olyan készülékekhez, amelyek A/B kettős partíció, a rendszerpartíció gyökérkönyvtárként (/) van felszerelve, de az A/B kettős partícióval nem rendelkező eszközökön a rendszerpartíció a /system címen van felszerelve. Ez lehetetlenné teszi a csak rendszerre vonatkozó OTA-kat a nem A/B eszközökön, mivel a ramdiskben lévő, frissítésre szoruló fájlok a rendszerindító partíción találhatók. Ezért a Google előírja, hogy az Android Pie-vel induló összes eszköz támogassa a rendszer-gyökér partíció-elrendezést, hogy lehetővé tegye a csak rendszerre vonatkozó OTA-kat az Android Pie és újabb verziókban. A rendszer-gyökér elrendezésben a ramdisk lemezkép egyesül a rendszerképbe, amely rootfs-ként van felszerelve.
Amióta a Google bevezette a root-rendszert, a megoldás A root eszközökhöz a rendszer gyökérként való visszaállítása volt a régi "initramfs rootfs" partíció elrendezése. Hogy művek rendben van az Android 7.1-től Android 9 Pie-ig, mivel az Android támogatja ezt a régi elrendezést, de az Android Q teljesen eltávolítja A rendszergazdaként való támogatás mostantól minden eszközön kötelező, még azokon az eszközökön is, amelyek Android Q-ra frissülnek. A Magisk korábbi verziói még működtek néhány "igazán csúnya hacknek" köszönhetően, de topjohnwu nem volt elégedett ezzel a megoldással, így a rendszer gyökérként való megfelelő támogatásához megvan. bemutatott "MagiskInit."
A rendszer-gyökér partíció elrendezés megfelelő támogatásának szép mellékhatása az egy lehetséges út a gyökérfelismerés megszakadt. Ahogyan topjohnwu kedvesen elmagyarázta nekem, a régi "visszatérés initramfs rootfs-hez" módszert az alkalmazások könnyen észlelték, mert a Magisk csatlakoztatva lett. a rendszer a '/rendszer_gyökér'-hez, és a '/rendszer_gyökér/rendszer' csatolását a '/rendszer'-hez köti. Az alkalmazásnak csak annyit kell tennie, hogy észlelje a root jelenlétét ellenőrizze, hogy a '/system_root' létezik-e, vagy a '/' a 'rootfs'. Nem világos azonban, hogy bármelyik alkalmazás valóban kihasználta-e ezt az észleléshez gyökér. Mégis jobb félni, mint megijedni.
Vegyes változtatások
Az Android Q támogatja az úgynevezett "blastula medence" az Android alkalmazás életciklusához. MagiskHide volt képtelen hogy felismerje azokat az alkalmazásokat, amelyek elől el kell rejteni a root hozzáférést, ha az új „folyamatkészlet” funkció engedélyezve van. A Canary legújabb kiadása már támogatja ezt a funkciót. Topjohnwu szerint: "A Q-ban bevezetett új blastula pool optimalizálás megfelelő támogatása érdekében átírtam a folyamatfigyeléshez szükséges nyomkövetési logika jó részét."
Ha Pixel 3, Pixel 3 XL, Pixel 3a vagy Pixel 3a XL telefonja van az Android Q bétaverzióján, próbálja ki a Magisk Canary legújabb kiadását, és tudassa velünk, ha sikerült rootolni eszközét.
Magisk Kanári-csatorna