Root jest teraz dostępny dla Google Pixel i Pixel XL: oto co się zmieniło i co działa

Ta metoda jest nieaktualna i może nie działać. Odwiedź nasze fora Google Pixel i Pixel XL, aby uzyskać najnowsze metody rootowania.

Zgodnie z obietnicą systemowy root dla Google Pixel i Pixel XL jest już dostępny . Starszy uznany programista Chainfire przez ostatnie kilka dni pracował nad rootowaniem dla telefonu Google Pixel z Androidem 7.1 Nougat i osiągnął etap rozwoju, w którym jest teraz wystarczająco wygodny, aby dzielić się swoją pracą ze społecznością.

Dostęp root do Google Pixel i Google Pixel XL jest dostępny po zainstalowaniu SuperSU 2.78 SR2 , który umożliwia dostęp su bez dotykania czegokolwiek na partycji systemowej i pozwala na przełączanie dm-verity. Przed zrootowaniem urządzenia musisz najpierw odblokować bootloader. Pierwszym krokiem do odblokowania bootloadera jest pobranie plików binarnych adb i fastboot (zalecamy pobranie Minimal ADB i Fastboot z naszych forów), a następnie zainstalowanie odpowiedniego sterownika Google USB dla twojego komputera.

Jeśli urządzenie Pixel zostało zakupione bezpośrednio od Google, wystarczy wydać polecenie flashowania odblokowania Fastboot, a następnie odblokować OEM Fastboot. Jeśli kupiłeś Pixela od Verizon lub EE, musisz odblokować bootloader za pomocą narzędzia dePixel8. Pospiesz się, ponieważ programiści SunShine wspomnieli, że ich exploit odblokowujący bootloader może zostać załatany w nadchodzącej listopadowej aktualizacji bezpieczeństwa!


Jak zainstalować SuperSU na twoim Pixelu

Jak wspomina Chainfire w swoim poście w Google+, musisz najpierw pobrać obrazy rozruchowe do katalogu głównego Pixel lub Pixel XL z jego strony internetowej. Możesz kliknąć tutaj, aby pobrać zip dla Google Pixel lub kliknij tutaj, aby pobrać zip dla Google Pixel XL. Po pobraniu zip musisz uruchomić bootboot obrazu boot -root, NIE NALEŻY flashować obrazu! Innymi słowy, jedyne polecenie, jakiego potrzebujesz dla tych dwóch urządzeń, to:

 fastboot boot boot-to-root.img 

Poczekaj kilka minut, a po kilku ponownych uruchomieniach zostaniesz uruchomiony z pełnym dostępem do katalogu głównego. Tak!


Natychmiastowe wykorzystanie dostępu do katalogu głównego

Nawiasem mówiąc, oprócz zwykłej funkcjonalności, jaką powinien zapewniać dostęp do konta root, przeszliśmy do przodu i przetestowaliśmy kilka rzeczy, o których wiemy, że wszyscy bylibyście zainteresowani. Po pierwsze, czy możesz przywrócić Google Now na Tap? Odpowiedź brzmi: tak! Wystarczy edytować plik build.prop z następującą zmianą, ponownie uruchomić i wyczyścić dane aplikacji Google, a Asystent Google nie będzie już witany.

Zmiana

 ro.opa.eligible_device=true 

do

 ro.opa.eligible_device= false 

Co z kolejną często ukrytą funkcją: stuknij dwukrotnie, aby obudzić? Rozejrzeliśmy się za ukrytym przełącznikiem i odkryliśmy, co to wydaje się być.

 sailfish:/sys/devices # echo 1 > ./soc/7577000.i2c/i2c-3/3-0020/input/input3/wake_gesture 

Niestety, kiedy zmieniliśmy wartość, wydawało się, że się nie trzyma. Na razie wydaje się, że będziesz musiał flashować niestandardowe jądro, takie jak ElementalX, aby d2tw działał.

Niektóre inne rzeczy, które testowaliśmy, obejmują to, czy Titanium Backup działa ( działa ), Better Battery Stats ( działa ), Substratum / Layers Themes ( wydaje się mieć pewne problemy ) i blokowanie reklam ( nie działa ). Ad-away nie działa obecnie, ponieważ / system nie może być zamontowany domyślnie do odczytu i zapisu, więc będziemy musieli poczekać, aż TWRP będzie dostępny, zanim będziemy mogli sflashować systemowe obejście dla Ad-Away. I tak, próbowaliśmy już użyć FlashFire do flashowania aktywatora Ad-Away dla bezsystemowego rootowania, ale wydaje się, że w tej chwili nie działa.

 sailfish:/sys/devices # mount -o rw, remount /system mount: '/system' not in /proc/mounts 

Aktualizacja: Chainfire potwierdził, że FlashFire i inne aplikacje będą musiały zostać zaktualizowane, zanim będą mogły być używane. Zobacz więcej szczegółów.

Aktualizacja 2: Chainfire przesłał nam wiadomość o obejściu problemu, dzięki któremu AdAway działa, dopóki sama aplikacja nie zostanie zaktualizowana. Zobacz aneks na końcu artykułu.

Oto kilka zrzutów ekranu pokazujących, że Titanium Backup działa. Jeśli więc pochodzisz z innego urządzenia i chcesz przywrócić wszystkie kopie zapasowe aplikacji, możesz mieć pewność, że wszystkie dane aplikacji zostaną przywrócone.

Będziemy nadal nurkować głęboko w naszych urządzeniach Pixel, aby zobaczyć, co możemy przełączyć. Która funkcja „Pixel exclusive” będzie następna?


„Walka” o osiągnięcie korzenia

Chainfire jest dość skrupulatny, jeśli chodzi o informacje o wydaniu. Gdy jesteś programistą, który zapewnia dziesiątkom tysięcy użytkowników metodę uzyskania dostępu do konta root, warto być tak transparentnym, jak to możliwe, aby nie stawić czoła hordie zdezorientowanych użytkowników zastanawiających się, dlaczego coś się zepsuło. Podczas gdy jego konto na Twitterze (@Chainfire) jest zarezerwowane bardziej na krótkie ogłoszenia, Chainfire zwykle publikuje bardzo mile widziane, długie wyjaśnienia na swoim koncie Google+. Tym razem nie jest inaczej.

Po pierwsze, Chainfire wyjaśnia, jakie zmiany zostały wprowadzone w dwóch telefonach Pixel, które musiał obejść, aby uzyskać dostęp do roota. W szczególności Chainfire najpierw opisuje nowy układ partycji na urządzeniach Pixel.

Nowy układ partycji (Pixel i prawdopodobnie wiele przyszłych urządzeń):

- Istnieją dwie z kilku partycji Androida, boot, system, sprzedawca

- Nie ma partycji odzyskiwania i pamięci podręcznej

- Katalog główny / dla Androida jest teraz częścią partycji systemowej zamiast partycji rozruchowej (initramfs)

- Odzyskiwanie jest teraz w normalnym obrazie rozruchowym i wykorzystuje jego initramfs (który był używany przez Androida)

Jak już wspomnieliśmy, te zmiany partycji na dwóch telefonach Pixel wymagałyby modyfikacji obecnej metody rootowania. Chainfire potwierdził, że te modyfikacje partycji / system wymagały innego podejścia, które może obejmować modyfikację jądra.

Dzięki nowemu układowi partycji Pixela te pliki, które zmieniliśmy, zostały przeniesione na partycję systemową (to, co pierwotnie myśleliśmy jako / system, jest teraz podfolderem w systemie plików tej partycji). Czy zatem moglibyśmy zmodyfikować partycję systemową zawierającą wszystkie te pliki i pozostawić obraz rozruchowy w spokoju? Chociaż osobiście wolę modyfikację obrazu rozruchowego i pozostawienie systemu w spokoju, odwrotność może potencjalnie być rozwiązaniem i wiem, że niektórzy użytkownicy technologii woleliby to.

Nie udało mi się jednak tego uruchomić. Program ładujący faktycznie wysyła informacje do jądra (które znajduje się w obrazie rozruchowym), że wymuszona obsługa DM-verity (która wymusza integralność partycji systemowej), której nie możemy przechwycić ani zmienić bez modyfikacji (boot roll ) modyfikacji obrazu rozruchowego. Mój pierwszy udany katalog główny Pixela został zrobiony w ten sposób - modyfikując oba (zdjęcie opublikowane wcześniej pochodzi z tej próby).

Innymi słowy, nie ma możliwości wyłączenia dm-verity bez pewnych modyfikacji jądra, jak podejrzewaliśmy. Ponieważ jądro wymusza włączanie dm-verity, Chainfire musiał nieznacznie zmodyfikować jądro, aby powstrzymać dm-verity przed zapobieganiem zmianom w partycji systemowej. Na szczęście Chainfire odkrył, że jego modyfikacja wymaga tylko małej łatki binarnej jądra, ale nie pełnej rekompilacji jądra. Dlatego jego rozwiązanie powinno pozostać ogólnym rozwiązaniem dla urządzeń z systemem Android 7.1 ze schematem partycji A / B.

Aby bardziej szczegółowo wyjaśnić tę nową metodę rootowania, Chainfire osiąga systemowy root, zmuszając jądro do korzystania z initramfs obrazu rozruchowego jako katalogu głównego, a nie z partycji systemowej. W tym celu zawartość katalogu głównego na partycji systemowej jest importowana do obrazu rozruchowego, co umożliwia modyfikację tych plików bez konieczności modyfikowania plików systemowych. Partycja systemowa jest podłączona do katalogu / system_root i / system sam sim-link do / system_root / system. I wreszcie jego łatka na jądro modyfikuje jądro tak, że ignoruje polecenie wysłane z bootloadera, które normalnie wymusiłoby wiarygodność dm.

Jednak w tej nowej metodzie wprowadzono kilka dość trywialnych problemów. Niektóre aplikacje, takie jak FlashFire lub AdAway (oba, o których wiemy, że nie działają), oczekują, że partycja systemowa zostanie zamontowana jako / system, a nie / system_root i będzie wymagać odpowiedniej aktualizacji. Chociaż możesz spróbować ponownie zainstalować system jako taki

 mount -o rw, remount /system_root 

Co powinno pozwolić ci pisać do / system. Nie przetestowaliśmy jeszcze, które aplikacje roota naprawiają, ale możesz to przetestować sam. Wreszcie Chainfire nie jest pewien, czy Suhide będzie działał z nowym schematem rootowania, ale twierdzi, że będzie nadal szukał obejścia.


Aby pobrać SuperSU na telefony Google Pixel, przejdź do wątku na forum. Ogromne podziękowania dla Chainfire za przeniesienie roota na urządzenia! Niech zaczną się gry Tweaking!

Odwiedź subforum SuperSU!

Ta historia się rozwija i będzie aktualizowana w miarę otrzymywania nowych informacji. Jeden Google Pixel został poświęcony przy tworzeniu tego artykułu. RIP Dane Jeffa.


Dodatek 1: Tymczasowa poprawka do AdAway

Pobierz AdAway v3.1.2 z naszych forów, a następnie użyj emulatora terminali lub powłoki ADB, aby wprowadzić następujące polecenie:

 mkdir /su/etc; cp /system/etc/hosts /su/etc/hosts; echo "#!/su/bin/sush\nmount -o bind /su/etc/hosts /system/etc/hosts" > /su/su.d/50adaway; chmod 0700 /su/su.d/50adaway 

Uruchom ponownie i powinieneś mieć blokowanie reklam w całym systemie.