3 votos

Cómo obtener acceso de root en el emulador de Android BlueStacks

BlueStacks es un popular emulador de Android para Windows y macOS para gamers. Es popular, ya que el emulador viene con Google Play Store preinstalado y la instalación de juegos es fácil. Desafortunadamente, el sistema de archivos del emulador no está rooteado por defecto. ¿Cómo hacer root?

8voto

INS Puntos 5679

Estas instrucciones requieren que entiendas los conceptos básicos de la línea de comandos de UNIX. Las instrucciones funcionan en OSX, Linux y Windows. No se necesita Microsoft Windows ni BlueStacks Tweaker.

El emulador está utilizando internamente VirtualBox y ejecuta binarios Android x64 (64 bits). Viene con dos imágenes de disco VirtualBox, Prebundled.bdi y Root.vdi. Afortunadamente, BlueStacks ha dejado un binario primitivo su en la imagen del disco, por lo que no necesitamos añadir este binario a la imagen nosotros mismos. Aún así, necesitamos cambiar la configuración de VirtualBox.

El comando adb se puede obtener desde Android Studio SDK de Google o también se encuentra en /Applications/BlueStacks.app/Contents/MacOS/adb.

Asegúrate de que el emulador esté apagado y cambia todos los discos en el archivo de configuración de VirtualBox a lectura-escritura. En macOS, el archivo se puede encontrar en ~/Library/BlueStacks/Android/Android.vbox. Asegúrate de que el emulador no esté corriendo cuando edites este archivo.

enter image description here

Inicia el emulador.

Activa el puente ADB en la configuración del emulador.

enter image description here

Descarga el archivo zip de SuperSU en tu computadora local.

Inicia tu sesión de hacking ADB.

# Este es el puerto predeterminado expuesto por BlueStacks
adb connect localhost:5555

Copia el archivo zip en /mnt/sdcard del dispositivo emulado.

adb push SuperSU-v2.82-201705271822.zip /mnt/sdcard

Luego trabaja dentro de la terminal del emulador:

# Inicia una sesión de shell en la VM del emulador
adb shell

# Usa el binario de BlueStacks proporcionado para cambiar a root
system/xbin/bstk/su

# Deshabilita SELinux
setenforce 0

# Remonta todos los sistemas de archivos
mount -o rw,remount,rw /
mount -o rw,remount,rw /system
mount -o rw,remount,exec,rw /storage/emulated

# Descomprime el zip de SuperSU
cd /mnt/sdcard
mkdir supersu
cd supersu
unzip ../SuperSU-v2.82-201705271822.zip

# Extrae el comando su y ejecuta su post-instalación
cp x64/su /system/xbin/su 
chmod a+rwx /system/xbin/su 
/system/xbin/su --install

# Inicia el modo daemon de su
/system/xbin/su --daemon

Ahora ejecuta el instalador para Superuser.apk en el emulador a través del Administrador de Medios.

enter image description here

enter image description here

Cuando su --daemon está corriendo, la interfaz de usuario de SuperSU en Android debería detectar el root al iniciarse:

enter image description here

El emulador necesita reiniciarse después de esto, ya que se cuelga. Después del reinicio, al abrir SuperSU verás que está habilitado.

enter image description here

0 votos

Algunos cambios: 1. Al editar ~/Library/BlueStacks/Android/Android.vbox, BlueStacks no debe estar ejecutándose. Realiza las ediciones, luego inicia BlueStacks. 2. Inicia el shell del emulador usando adb shell

0 votos

@BaoThienNgo Gracias. Actualizado.

0 votos

Obtuve este error cp: /system/xbin/su: sistema de archivos de solo lectura cuando ejecuté cp x64/su /system/xbin/su. Seguí todos los pasos hasta ese punto. ¿Cómo puedo solucionarlo?

1voto

Casto Luis Puntos 11

La respuesta de Mikko Ohtamaa ya cubrió la pregunta principal. Sin embargo, si hay dificultades al seguirla, aquí hay algunos consejos adicionales que pueden ayudar:

a) Si adb connect localhost:5555 no funciona, intenta adb kill-server y luego adb start-server

b) Usualmente el archivo .zip de SuperUser..... es un directorio, si es así, sugiero evitar estos pasos

mkdir supers
cd supersu
unzip ../SuperSU-v2.82-201705271822.zip*

c) Intenta encontrar el SuperUser.apk en internet. Luego ejecuta

Salir de adb y comenzar desde el primer paso

Todos los pasos son similares pero

adb push /mnt/sdcard

Evita estos pasos

#1. Descomprimir el archivo zip de SuperSU

cd /mnt/sdcard
mkdir supersu
cd supersu
unzip ../SuperSU-v2.82-201705271822.zip

#2. Extraer el comando su y ejecutar su post-instalación

cp x64/su /system/xbin/su
chmod a+rwx /system/xbin/su
/system/xbin/su --install

#Continuar con los siguientes pasos

Luego ejecuta el SuperUser.apk que obtuviste de internet desde el paso que dice ejecutar SuperUser.apk desde MediaCenter.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X