Recientemente comencé a ejecutar la versión Android-x86 6.0-RC1
en mi iMac, y estoy considerando hacerlo uno de mis varios controladores diarios. Sin embargo, hay un problema importante que está generando algunas dudas: no puedo encontrar una manera de instalar archivos zip para flashear. He investigado sobre una recuperación personalizada, pero al parecer la estructura de directorios de Android-x86 es demasiado diferente a la de su contraparte de dispositivo móvil como para ejecutar o incluso instalar una directamente. He intentado usar FlashFire de Chainfire, pero obviamente no funciona por razones similares al último método.
He leído en una breve conversación en el foro de XDA-Developers discutiendo este tema que una recuperación sería relativamente innecesaria porque "simplemente podrías usar una distribución ligera de Linux como recuperación". Supongo por la redacción que harías esto arrancando una pequeña distribución de Linux en la misma máquina, montando la imagen principal de Android-x86, extrayendo el archivo zip para flashear y ejecutando el script de instalación que contiene, sin embargo no estoy seguro si este método funcionaría en la práctica, ya que no puedo encontrar más información al respecto.
Necesito la capacidad de flashear un archivo zip ya que es la única forma actual aparte de usar una recuperación personalizada para instalar el marco Xposed en android, en el cual confío mucho para todo, desde comodidades personales hasta funciones de seguridad más configurables manualmente para facilitar el desarrollo. Dada la compatibilidad inherente de Android-x86 con prácticamente cualquier cosa compilada para ejecutarse en un dispositivo android basado en Intel Atom o Celeron, la falta de Xposed es el único factor que me impide intentar el desarrollo de ROM personalizados, así como comenzar a portar varios proyectos que ya están en desarrollo y que hasta ahora eran exclusivos de distros BSD/Debian a dispositivos android basados en Intel con root.
ACTUALIZACIÓN: Logré montar el sistema de archivos Android-x86 desde un CD de GParted en vivo, y chroot a él, pero al ejecutar flash-script.sh
inicia el instalador y arroja el siguiente registro de error:
******************************
Xposed framework installer zip
******************************
-Montando /system y /vendor en lectura-escritura
/tmp/META-INF/com/google/android/flash-script.sh[102]: no se puede crear /dev/null: No existe el archivo o directorio
/tmp/META-INF/com/google/android/flash-script.sh[103]: no se puede crear /dev/null: No existe el archivo o directorio
/tmp/META-INF/com/google/android/flash-script.sh[104]: mount: no encontrado
/tmp/META-INF/com/google/android/flash-script.sh[105]: no se puede crear /dev/null: No existe el archivo o directorio
-Comprobando el entorno
/tmp/META-INF/com/google/android/flash-script.sh[112]: head: no encontrado
/tmp/META-INF/com/google/android/flash-script.sh[112]: sed: no encontrado
/tmp/META-INF/com/google/android/flash-script.sh[114]: cut: no encontrado
*Continúa hasta la línea 121*
Versión de Xposed:
! Plataforma incorrecta: arm
! Este archivo es para:
! Por favor, descarga el paquete correcto
! para tu plataforma/ROM
Asumo que la razón por la que esto sucedió es que la versión de Linux que estoy usando es demasiado ligera y no incluye los programas requeridos, sin embargo, eso no explica el hecho de que el registro de errores informa que el sistema es ARM y afirma que la versión x86 es incorrecta para mi plataforma dado que estoy ejecutando una copia de Android-x86, por lo que si alguien tiene información al respecto, ¡por favor, aporta!
0 votos
Tengo una pregunta para ti: si arrancas desde un medio en vivo, ¿podrías ver todo el sistema de archivos de Android-x86 (incluido el directorio root)?
1 votos
Sí, Android-x86 utiliza un solo archivo .img en el que se almacena todo el sistema de archivos root, así como el directorio de usuario /storage/emulated/0/, sin embargo, para emular una tarjeta SD tienes que crear un archivo 'data.img', guardarlo en la misma ubicación que el sistema.img y especificarlo para ser usado en grub.cfg. También es destacable que Android-x86 viene pre-rooted, con Superusuario incrustado en SecSettings.apk, así que ya tengo acceso completo de lectura y escritura desde el propio sistema operativo. Además, Xposed solo tiene que ser instalado a través de un archivo zip, no sobrescribir archivos del sistema, así que podría hacerlo manualmente, simplemente no sé cómo.
0 votos
Gracias por la aclaración. ¿Ya intentaste extraer el contenido del ZIP flashable y examinar la sintaxis y operaciones realizadas por update-binary y updater-script?
0 votos
Acabo de hacerlo, parece que el archivo updater-script es un archivo ficticio, y de hecho depende de flash-script.sh en el mismo directorio, sin embargo los archivos contenidos parecen ser específicos de Xposed, no parece que se sobrescriban archivos del sistema, y el archivo flash-script.sh parece depender de que el zip primero sea extraído a una ubicación específica, así que supongo que lo mejor que puedo hacer (después de confirmar que no se sobrescriben archivos del sistema) es mover los archivos manualmente, reiniciar y ver qué pasa. Haré eso y actualizaré con el resultado.
0 votos
Al mirar por segunda vez, parece que varios archivos del sistema son sobrescritos durante la instalación.
0 votos
Exactamente. Realizar manualmente las acciones descritas en el update-binary es la mejor opción. Y sí, habrá modificaciones en la partición de /system.
0 votos
Monté el sistema desde un disco de Linux en vivo, y no había rastro de system.img, solo los programas de arranque de efi y grub. A la luz de esto, intenté instalarlo manualmente y Android-x86 entró en un bucle de arranque, intentaré con la versión de depuración para ver si arranca, de lo contrario tendré que reinstalarlo.
0 votos
No estoy seguro si el Android x86 es una versión de root, supongo que sí, si estás usando xposed descarga flashfire e intenta flashear el archivo .zip con él.
0 votos
Sí, viene pre-rooted con Superuser integrado en la configuración. He intentado FlashFire sin embargo lista mi dispositivo como desconocido, y cuando intenta reiniciar el dispositivo bajo un distro de recuperación de Linux para realizar el flasheo real dice Cargando... pero cuando la pantalla se pone en negro, en lugar de quedarse en negro durante unos 30 segundos y cargar la interfaz de recuperación de flashfire, simplemente se queda perpetuamente en negro, y la máquina tiene que reiniciarse. También debo decir, ejecutando flash-script.sh desde un distro de Linux con chroot hace bucles de arranque Android-x86