Cómo cargar android kitkat desde sata con banana pi

Cómo compilar Android 4.2.2 para arrancar Banana Pi por SATA

En este tutorial verás cómo compilar una imagen de android para Banana Pi o Raspberry pi, además de cómo configurar el Banana Pi para que arranque desde el disco SATA y no utilice la tarjeta de memoria para casi nada.

En las pruebas ha dado una velocidad sostenida en transferencia de datos de unos 70 megas trabajando desde el disco duro, por lo que si tenemos en cuenta eso, la capacidad que puede tener un disco de 2,5” y la durabilidad de estos comparado con una tarjeta SD todo son ventajas.

Como compilar Android para el Banana Pi

Sería mucho más fácil si pudiese colgar la imagen que hemos generado y usado para este tutorial, pero tiene ciertos archivos con copyright, o eso tengo entendido, por lo que preferimos no arriesgar, así que no queda otra que realizar una compilación por tu cuenta, pero tranquilo que es muy sencillo y solo necesitarás un par de cosas:

  • Virtualbox instalado en tu equipo (o un pc con linux si lo tienes)
  • La versión 14.04 de Kubuntu o Ubuntu es la ideal, aunque también funciona con la 14.10 en teoría.

Una vez descargado tienes que o bien instalarlo en una VM, o en un equipo físico con suficientes recursos, recuerda que si va muy justito le costará mucho más realizar la compilación. Una vez la tengas instalada lo ideal es que abras una consola y te pongas en modo root, pero si no puedes usar sudo delante de los comandos.

Preparativos

Necesitaremos los siguientes repositorios, configuraciones y paquetes, ejecútalos uno después de otro:

En un principio no debería ser un orden exclusivo, pero a mí me ha funcionado ejecutarlos en este orden. Todos estos paquetes nos van a hacer falta para luego poder hacer la compilación sin que nos de errores, si las omites vas a encontrarte fallos a mitad de la compilación y como es tan lenta será todo dolores de cabeza.

Descargando y compilando el git

Vamos a tener que clonar el git de Android Kitkat dentro de una carpeta, esto queda a tu elección pero en mi caso la he creado en /var/ANDROID. Para ello nos vamos a var:

Una vez estás aquí simplemente ejecutas el siguiente comando

y cuando termine (es grande tardará un rato), puedes empezar a editar.

NOTA: En mi caso me ha tocado ejecutar como root un editor de texto, ya que desde consola no me dejaba guardar los cambios.

Lo primero será copiar la configuración predeterminada, estando en la carpeta ejecutaremos el comando

Ahora tenemos que editar el siguiente archivo:

y sustituir su contenido con este otro

Sustituye todo el contenido del archivo que hay en la carpeta con el anteior. Lo que hacemos es preparar las particiones para que busquen los datos y trabajen sobre el disco duro en lugar de hacerlo sobre la SD.

Léete también  Pokemon Go, llegan las recompensas diarias y alguna cosilla más

Guardamos los cambios (asegúrate de que se han cambiado, cierra el archivo y vuelvelo a abrir para evitar sorpresas o volverte loco sin saber por qué no funciona).

Compilar android kitkat para Banana Pi por sata

Por fín nos vamos a meter de lleno en la compilación. estando dentro de la carpeta /var/ANDROID, nos iremos a la subcarpeta scripts:

y antes de empezar con la compilación de la imagen tendremos que compilar el kernel:

Una vez termine sin errores podremos ya lanzar la compilación de android:

Nos va a preguntar si queremos hacer la compilación completa, le diremos yes, y la siguiente pregunta será qué versión queremos usar, elegiremos la 17 que es la que hemos modificado.

compilar-android-ubuntu

Tras estos pasos veremos que se pone manos a la obra, ten en cuenta que va a tardar bastante, con un i7-3770k ha tardado varias horas (máquina virtual con 6GB de ram asignados y 4 núcleos). Debería terminar sin dar ningún error.

Una vez termine nos indicará la carpeta en la que está la imagen que podremos copiar a una memoria usb, otro disco duro o directamente al equipo con la que la vayamos a pasar a la sd.

Si te ha dado algún problema alguna de las compilaciones puedes dejar un comentario con los errores y te ayudaré a solucionarlos.

Como cargar una imagen de android en una SD para Banana Pi y Raspberry Pi

Tengo que darle las gracias a Txavinet por la segunda parte de este tuto, ya que ha sido él el que se ha estado peleando con el platanito hasta hacerlo funcionar con la imagen que hemos compilado antes. Nos quedan unos cuantos pasos pero no son muy difíciles de ejecutar.

Lo primero que te va a hacer falta es lo siguiente:

  • Una SD de mínimo 8GB (sino no se grabará bien aunque quepa)
  • SdFormatter
  • Phoenixcard (toca buscar en google)
  • Un equipo con linux, o una máquina virtual que te permita conectar un disco sata y una tarjeta de memoria (no lo hemos conseguido así)

Lo primero será formatear la tarjeta sd con sdformatter activando format size adjustement. Asegúrate de que has seleccionado la tarjeta que toca, o evita en su lugar tener ninguna otra unidad usb conectada para no borrar la que no es por accidente.

Léete también  Cómo transmitir el escritorio del PC con Nvidia Shield y Moonlight

Ahora abriremos phoenixcard y seleccionaremos la imagen que hemos creado antes así como la tarjeta sd que tengamos puesta. Una vez te asegures de que es la correcta (como antes) puedes darle a startup > burn.

El mensaje que debe aparecer será magic complete. burn end, en ese momento te vas a la bandeja del sistema y le das a quitar hardware con seguridad, de esta forma te aseguras que no se haya quedado ningún archivo de la tarjeta abierto y que de posibles fallos más adelante.

quitar-hardware-seguridad

Clonar la tarjeta SD al HDD para Banana Pi

Ahora que tienes extraída la tarjeta de memoria vas a necesitar conectar los dos a una máquina con linux que sea funcional. Es problemático pero este paso no se puede saltar, ya que se trata de replicar el contenido de la tarjeta de memoria sobre el disco duro. Si conoces alguna forma de hacerlo sobre windows por favor deja un comentario con los pasos.

Una vez conectadas en el equipo lo iniciaremos, en este caso se ha usado kubuntu pero debería funcionarte con otras distribuciones similares, ya que haremos uso de dd y gparted.

Ejecuta gparted con el fín de identificar las unidades, para componer luego el comando de duplicación, en mi caso han aparecido así:

  • /dev/sdb es mi disco sata de 160gb
  • /dev/sdc es mi sd de 8gb

Ahora vas a copiar la sd al disco sata, modifica las unidades segun te aparezcan a tí. Para eso abriremos una ventana del terminal o consola y ejecutaremos el siguiente comando.

 

Aunque parezca que no está haciendo nada debes esperar, ya que está trabajando y lo normal es que tarde entre 5 y 10 minutos en hacer la copia, dependerá de la velocidad de tus unidades. Si tu tarjeta de memoria o lector tiene led puedes ver que está leyendo.

Lo siguiente será crear la partición que nos falta en la lista de particiones, la /dev/sdb4 (en el disco duro), que es la que se montará como sdcard en el sistema android. Es importante crearla en cuarta posición, podemos elegir formatearla en fat32 o ntfs (ver pasos abajo), dependerá del tamaño de archivos que vayas a usar. Para crear la partición lo tienes que hacer con fdisk:

sudo fdisk /dev/sdb

p nos mostrará el contenido, podemos ver que la partición número 4 no existe (/dev/sdb4), vamos a crearla siguiendo estos comandos:

  • n
  • tipo de particion p (tras esto selecciona automáticamente el identificador número 4)
  • primer sector intro
  • ultimo sector intro
  • t (cambiar id de sistema)
  • 4 (seleccionar particion 4)
  • codigo exadecimal: b (para w95 fat32)
  • w (guardar cambios)

Una vez ya la tenemos creada tienes que formatearla:

Ahora ya puedes apagar el equipo y desconectar la tarjeta y el disco duro, conectarlos al banana pi y android arrancará perfectamente desde el disco duro. Recuerda dejar puesta la tarjeta sd ya que hará de sector de arranque y le indicara al banana que tiene que usar el disco SATA.

Android en Banana Pi con partición NTFS

Si quieres usar la partición de sdcard con el sistema de archivos en NTFS tienes que hacer lo siguiente.

En primer lugar tendrás que conectar el disco duro y la sd al Banana, para que realice un primer arranque con la partición formateada en fat32. Una vez haya arrancado del todo el sistema ya podemos apagarlo. De no hacer este primer arranque montará de forma incorrecta la partición en NTFS y no funcionará.

Conecta el disco duro a un equipo con windows o linux, desde windows te vas al administrador de discos desde el meú inicio, haces click derecho sobre la partición (que será la más grande) y la formateas en NTFS. En caso de usar linux (que puedes hacerlo antes de desconectar el disco y ponerlo en el plátano, ejecuta este comando:

Configurar la partición sdcard en Android y Banana Pi

Ahora volveremos a conectarlo todo en el Banana Pi e instalaremos un explorador con permisos de root, en mi caso he usado root explorer. Abriremos con el editor de texto el archivo:

Comentaremos una línea y modificaremos la otra:

Guardaremos el archivo y saldremos. La primera línea es la que monta el sata, y al comentarla no veremos la misma partición montada en dos puntos. La segunda línea es la que monta la partición formateada en ntfs como sdcard para que aparezca como memoria usable en android.

Como curiosidad, al menos ha mi me ha pasado, la primera vez que edito y guardo el archivo, realmente no se guarda aunque no de ningún error (lo podemos comprobar mirando la fecha y hora de modificación del archivo). Para que lo guarde correctamente hay que volver a abrirlo, modificar y guardar. Lo que yo hago es que lo abro, pongo un carácter, guardo, cierro, vuelvo a abrir y ya lo puedo editar tranquilo sabiendo que cuando lo guarde no habrán problemas.


AYUDANOS a poder seguir dando respuestas. Te podemos echar una mano y tú también a nosotros, símplemente dale a me gusta.