Root ahora está disponible para Google Pixel y Pixel XL: esto es lo que cambió y lo que funciona

Este método está desactualizado y puede no funcionar. Visite nuestros foros de Google Pixel y Pixel XL para conocer los últimos métodos de raíz.

Como se prometió, la raíz sin sistema para Google Pixel y Pixel XL ya está disponible . El desarrollador senior reconocido Chainfire estaba trabajando en la raíz del teléfono Google Pixel con Android 7.1 Nougat en los últimos días, y ha alcanzado una etapa en su desarrollo en la que ahora se siente lo suficientemente cómodo como para compartir su trabajo con la comunidad.

El acceso de raíz para Google Pixel y Google Pixel XL está disponible instalando SuperSU 2.78 SR2 , que permite el acceso a su sin tocar nada en la partición del sistema y permite alternar dm-verity. Antes de que puedas rootear tu dispositivo, primero tendrás que desbloquear tu gestor de arranque. El primer paso para desbloquear el gestor de arranque es descargar los archivos binarios adb y fastboot (recomendamos tomar Minimal ADB & Fastboot de nuestros foros) y luego instalar el controlador USB de Google apropiado para su máquina.

Si ha comprado su dispositivo Pixel directamente de Google, entonces solo necesita emitir un comando de desbloqueo de fastboot parpadeante seguido de fastboot oem unlock. En caso de que haya comprado su Pixel de Verizon o EE, deberá desbloquear su gestor de arranque a través de la herramienta dePixel8. Pero date prisa, porque los desarrolladores de SunShine han mencionado que su exploit de desbloqueo del cargador de arranque puede ser parcheado en la próxima actualización de seguridad de noviembre.


Cómo instalar SuperSU en tu Pixel

Como Chainfire menciona en su publicación de Google+, primero deberá descargar las imágenes de arranque a raíz para Pixel o Pixel XL de su sitio web. Puede hacer clic aquí para descargar el archivo zip de Google Pixel, o hacer clic aquí para descargar el archivo zip de Google Pixel XL. Después de descargar el zip, debe iniciar rápidamente la imagen de inicio a raíz, ¡NO inicie rápidamente la imagen! En otras palabras, el único comando que necesitará para los dos dispositivos es el siguiente:

 fastboot boot boot-to-root.img 

Espere unos minutos y, después de unos reinicios, se iniciará con acceso completo a la raíz. ¡Hurra!


Usos inmediatos del acceso a la raíz

Por cierto, además de la funcionalidad habitual que debe proporcionar el acceso raíz, hemos avanzado y probado algunas cosas que sabíamos que a todos les interesaría. En primer lugar, ¿ pueden recuperar Google Now on Tap? La respuesta es si! Todo lo que necesita hacer es editar build.prop con el siguiente cambio, reiniciar y borrar los datos de la aplicación Google y ya no será recibido con el Asistente de Google.

Cambio

 ro.opa.eligible_device=true 

a

 ro.opa.eligible_device= false 

¿Qué pasa con otra característica comúnmente oculta: tocar dos veces para despertar? Hemos buscado alrededor de la palanca oculta y hemos descubierto lo que parece ser.

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

Desafortunadamente, cuando cambiamos el valor, no parecía quedarse. Por ahora, parece que tendrá que actualizar un kernel personalizado como ElementalX para que d2tw funcione.

Algunas otras cosas que hemos probado incluyen si Titanium Backup funciona ( funciona ), Better Battery Stats ( funciona ), Substratum / Layers Themes ( parece tener algunos problemas ) y el bloqueo de anuncios ( falla ). Ad-away no funciona actualmente porque / system no se puede montar lectura-escritura de forma predeterminada, por lo que tendremos que esperar hasta que TWRP esté disponible antes de que podamos actualizar la solución sin sistema para Ad-Away. Y sí, ya hemos intentado usar FlashFire para flashear el habilitador Ad-Away para root sin sistema, pero eso tampoco parece funcionar en este momento.

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

Actualización: Chainfire ha confirmado que FlashFire y otras aplicaciones deberán actualizarse antes de que puedan usarse. Ver abajo para más detalles.

Actualización 2: Chainfire nos ha enviado un mensaje con una solución alternativa para que AdAway funcione hasta que la aplicación se actualice. Vea el apéndice al final del artículo.

Sin embargo, aquí hay algunas capturas de pantalla que muestran que Titanium Backup funciona. Entonces, si viene de otro dispositivo y desea restaurar todas sus aplicaciones respaldadas, puede estar seguro de que todos los datos de su aplicación ahora serán restaurados.

Continuaremos sumergiéndonos profundamente en nuestros dispositivos Pixel para ver qué podemos alternar. ¿Qué función "Pixel exclusive" será la próxima en caer?


La "lucha" para lograr la raíz

Chainfire es bastante meticuloso cuando se trata de lanzar notas. Cuando eres el desarrollador que proporciona a decenas de miles de usuarios un método para lograr el acceso a la raíz, tiene sentido ser lo más transparente posible para no enfrentarte a una horda de usuarios confundidos que se preguntan por qué algo está roto. Si bien su cuenta de Twitter (@Chainfire) está reservada más para anuncios breves, Chainfire tiende a publicar explicaciones muy bienvenidas y largas en su cuenta de Google+. Esta vez no es diferente.

En primer lugar, Chainfire explica qué cambios se hicieron en los dos teléfonos Pixel que necesitaba solucionar para lograr el acceso a la raíz. En particular, Chainfire describe primero el nuevo diseño de partición en los dispositivos Pixel.

Nuevo diseño de partición (Pixel y probablemente muchos dispositivos futuros):

- Hay dos de varias particiones de Android, arranque, sistema, proveedor

- Las particiones de recuperación y caché se han ido

- El directorio raíz / para Android ahora es parte de la partición del sistema, en lugar de la partición de arranque (initramfs)

- La recuperación ahora está dentro de la imagen de arranque normal y usa sus initramfs (que solía ser usado por Android)

Como hemos cubierto anteriormente, estos cambios de partición en los dos teléfonos Pixel requerirían algunas modificaciones al método raíz actual. Chainfire ha confirmado que estas modificaciones a / partición del sistema requieren un enfoque diferente, que puede implicar la modificación del núcleo.

Con el nuevo diseño de partición de Pixel, los archivos que estábamos cambiando se han trasladado a la partición del sistema (lo que originalmente pensábamos que era / system ahora es una subcarpeta dentro del sistema de archivos de esa partición). Entonces, ¿podríamos modificar la partición del sistema que contiene todos estos archivos y dejar sola la imagen de arranque? Si bien personalmente prefiero hacer la modificación de la imagen de arranque y dejar el sistema en paz, lo contrario podría ser una solución, y sé que algunos usuarios de tecnología incluso lo preferirían.

Sin embargo, no pude hacer que esto funcione. El gestor de arranque en realidad envía información al kernel (que reside en la imagen de arranque) que fuerza dm-verity habilitada (que hace cumplir la integridad de la partición del sistema), que no podemos interceptar o cambiar sin ( roll drum ) modificando la imagen de arranque. Mi primera raíz exitosa del Pixel se hizo de esa manera: modificando ambos (la imagen publicada anteriormente es de este intento).

En otras palabras, no hay forma de desactivar dm-verity sin alguna modificación en el núcleo, como sospechábamos. Debido a que el kernel está forzando la habilitación de dm-verity, Chainfire necesitaba modificar ligeramente el kernel para evitar que dm-verity evite cambios en la partición del sistema. Afortunadamente, sin embargo, Chainfire descubrió que su modificación solo requiere un pequeño parche binario del núcleo, pero no una compilación completa del núcleo. Por lo tanto, su solución debería seguir siendo una solución genérica para dispositivos Android 7.1 con un esquema de partición A / B.

Para explicar este nuevo método raíz con más detalle, Chainfire logra una raíz sin sistema al hacer que el núcleo use initramfs de la imagen de arranque como su directorio raíz, en lugar de cualquier cosa de la partición del sistema. Para hacerlo, los contenidos del directorio raíz en la partición del sistema se importan a la imagen de arranque, lo que permite la modificación de estos archivos sin tener que modificar ningún archivo del sistema. La partición del sistema está montada en / system_root y / system en sí sim-vinculado a / system_root / system. Y finalmente, su parche de kernel modifica el kernel de tal manera que ignora el comando enviado desde el gestor de arranque que normalmente impondría dm-verity.

Sin embargo, hay algunos problemas bastante triviales introducidos con este nuevo método. Ciertas aplicaciones, como FlashFire o AdAway (que hemos demostrado que no funcionan) esperan que la partición del sistema se monte como / system, no / system_root, y deberán actualizarse en consecuencia. Aunque, puede intentar volver a montar el sistema como tal

 mount -o rw, remount /system_root 

Lo que debería permitirle escribir en / system. Todavía no hemos probado qué aplicaciones raíz se corrigen, pero puedes probarlo tú mismo. Finalmente, Chainfire no está seguro de si suhide funcionará con este nuevo esquema de enraizamiento, pero afirma que continuará buscando una solución alternativa.


Para descargar SuperSU para los teléfonos Google Pixel, dirígete al hilo del foro. ¡Muchas gracias a Chainfire por llevar la raíz a los dispositivos! ¡Que comiencen los juegos de retoque!

¡Visite el SuperSU Subforum!

Esta historia se está desarrollando y se actualizará a medida que recibamos nueva información. Un Google Pixel fue sacrificado al hacer este artículo. RIP los datos de Jeff.


Anexo # 1: Solución temporal para AdAway

Descargue AdAway v3.1.2 de nuestros foros, luego use un emulador de terminal o un shell ADB para ingresar el siguiente comando:

 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 

Reinicie, y debería tener bloqueo de anuncios en todo el sistema.