Tengo un Galaxy Note 10.1 (n8010) y quiero que inicie Arch Linux de forma nativa. Me refiero al arranque Arch Linux en lugar de Android. Todo lo que necesito es alterar los initramfs, que no puedo encontrar en ningún lugar del mundo. Mis preguntas:
- ¿Necesito alterar solo los initramfs, o tengo que hacer frente a otras cosas también? (como el núcleo en sí)
- [HECHO] ¿Dónde consigo un initramfs oficial de CyanogenMod 10.1 (quizás Github)? ¿O tengo que autocompilar el núcleo de CyanogenMod y extraerlo de zImage?
- [PROBABLEMENTE] ¿Puedo tener la raíz de Arch Linux dentro de la partición de datos de Android? (por ejemplo, / data / linux) ¿O tengo que comprar una tarjeta SD?
- ¿Qué más necesito saber / hacer?
Editar: encontré cómo alterar los initramfs :)
- descomprimir rom (CM10.1 para n8013 usado)
- wget http://whiteboard.ping.se/uploads/Android/unmkbootimg.gz
- gunzip unmkbootimg.gz
- ./unmkbootimg boot.img (¡guarde el comando dado con mkbootimg!)
- mkdir initramfs && cd initramfs
- gzip -cd initramfs.cpio.gz | cpio -i
- Altere los guiones de inicio <- probando eso ahora, publicaré el correcto una vez hecho
- encontrar . El | cpio -o -H newc | gzip> ../initramfs.cpio.gz (no estoy seguro si el comando es correcto ...)
- cd .. && limpia el directorio para que solo queden initramfs.cpio.gz y zImage ...
- ejecute el comando mkbootimg que guardó antes ...
- flashear el nuevo boot.img :)
Edición 2: El initramfs es bastante fácil de construir. Solo necesita montar el sistema de archivos raíz (ya sea la partición o la imagen de Linux) y apuntar a su init a través de un enlace simbólico dentro de initramfs
El problema es que necesita el kernel 4.x para arrancar el nuevo systemd de Arch
Para que el núcleo funcione, necesita una consola en serie para ver los errores y demás. Cuando construya el kernel, publicaré la configuración necesaria.
Para aquellos que no tienen mkbootimg (lo obtienes compilando un kernel) encontré uno precompilado
Campo de golf:
- mkbootimg: http://forum.xda-developers.com/showpost.php?p=4575685&postcount=2
- recurso 1: http://whiteboard.ping.se/Android/Debian
- desempacando y alterando initramfs: http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images
- unmkbootimg: http://whiteboard.ping.se/Android/Unmkbootimg