Lo primero que hay que hacer para instalar ejecutar Linux en una tablet allwinner como la PC97
es sacar el script.bin , este archivo le dice al kernel que, como y por que tiene que cargar
este archivo se encuentra ubicado en la primera partición de la nand, la nand esta dividida en varias particiones
nanda
nandb
nandc
etc, lo que nos interesa es sacar la partición nanda para extraer el script.bin , y para esto hay que tener adb instalado:
sudo apt-get install android-tools-adb android-tools-fastboot
una vez que se instala y conectas la tablet con la depuración usb activada y ejecutas:
$ adb devices
es posible( casi seguro ) que te diga:
List of devices attached
??????????????? device
Eso es que android no tiene ni idea de quien o que es nuestra tablet,para ello hay que saber el ID vendor de la tablet
Ejecutas:
$ lsusb
el resultado sería algo como esto:
Bus 001 Device 005: ID 046d:c31c Logitech, Inc. Keyboard K120 for Business
Bus 001 Device 003: ID 05e3:0605 Genesys Logic, Inc. USB 2.0 Hub
Bus 001 Device 008: ID 18d1:0003 Google Inc.
Bus 001 Device 008: ID 18d1:0003 Google Inc. es la tablet, 18d1 el ID vendor
Con este dato se lo decimos a adb
$ echo "0x18d1" > ~/.android/adb_usb.ini
0x18d1 es el ID vendor en mi caso, hay que añadir 0x mas el id que hemos sacado anteriormente
después vamos a crear un archivo para adb se entere bien de que tablet es:
$ sudo gedit 51-android.rules
se nos abre gedit y metemos la siguiente información:
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
Daos cuenta del ID vendor de antes 18d1, guardamos y copiamos el archivo a /etc/udev/rules.d/
$ sudo cp 51-android.rules /etc/udev/rules.d/
Reseteamos adb:
$ adb kill-server
Ahora deberíamos poder reconocer a la tablet por ADB:
$ adb devices
List of devices attached
20080411413fc082 device
Si no funciona reiniciar el PC
El siguiente paso es sacar nanda de android, para ello necesitamos ser root, pero al menos no necesitamos instalar guarrerias para ello
$ adb shell
$ rm -rf /data/local/tmp
$ ln -s /data /data/local/tmp
Reinicia la tablet y ejecuta:
$ adb shell
$ echo "ro.kernel.qemu=1" > /data/local/tmp/local.prop
Al reiniciar el dispositivo de nuevo, la shell ADB ya debería estar funcionando como root!
$ adb shell
root@android:/ #
NANDA
la mejor forma de extraer nanda de la tablet es así:
$ adb shell
$ cat /dev/block/nanda > /sdcard/nanda.img
$ exit
esto nos copiará una imagen de la primera partición de la tablet en la memoria interna de la tablet, ahora podemos copiarla conectando el dispositivo como MTP o podemos hacerlo por el mismo ADB
adb pull /sdcard/nanda.img /home/x/Documentos
Ya sabéis /home/usuario/donde_quieras
ahora tenemos nanda.img que podemos montarlo con pulsar el botón derecho sobre el archivo y montandolo o por terminal claro
$ sudo mount nanda.img /tmp
$ ls /tmp
y nos aparecerán los archivos que contiene la partición:
boot.axf
drv_de.drv
font32.sft
magic.bin
script0.bin
sprite
vendor
boot.ini
font24.sft
linux
os_show
script.bin
sprite.axf
El archivo script.bin contiene la información necesaria para iniciar Linux copiarlo a una carpeta segura:
En el siguiente capitulo: Compilando el kernel de Sunxi