Banana Pro-Partición root en disco SATA
RECORDATORIO
Esto es el típico recordatorio, una anotación en un papel que siempre extravías.
Fuera de su contexto puede no tener ningún sentido.
01/06/2016
Contents
Banana Pro - Partición root en disco SATA
Si tienes una placa Banana Pro, seguro que quieres tener la partición root en el disco SATA.
Requerimientos
- Banana Pro - Bananian 16.04 - Un disco SATA - Una tarjeta micro SD - u-boot-tools
La tarjeta micro SD
Por el momento no podemos prescindir de la misma, ya que el Boot loader se va a buscar a la misma. Intuyo que la tarjeta tiene que ser compatible (una que tengo por aquí de 32M no logro hacerla funcionar.
Instalació de Bananian 16.04
- Descargamos, comprobamos y descomprimimos::
$ wget https://dl.bananian.org/releases/bananian-1604.zip $ sha1sum bananian-1604.zip 99fdb18175c32b4c7d57ce970acb3837a17a439c bananian-1604.zip $ sha256sum bananian-1604.zip 8123d538c365553a0225f00746650044e72c8444b6b7b43d64ecb1eef517ae9f bananian-1604.zip $ unar bananian-1604.zip
- Instalamos vía dd:
dd if=bananian-1604.img of=/dev/mmcblk0p1> bs=1M && sync
Con estos pasos ya tenemos una imagen de Bananian capaz de arrancar nuestro Banana Pro
Instalación en disco SATA
La operativa se puede realizar tanto en el dispositivo, como en otra máquina Linux a la que conectemos la tarjeta microSD y el disco sata.
En nuestro caso vamos a presuponer que el disco /dev/sda es el disco SATA, y el dispositivo /dev/mmcblk0 es la tarjeta microSD.
Copia de la partición root
- Creamos una partición del tamaño deseado en el Disco SATA, de 2G o más de tamaño. En nuestro caso será /dev/sda1
- Copiamos el contenido del root de la tarjeta al Disco SATA:
mkdir /tmp/root.sd /tmp/root.sata mount /dev/mmcblk0p2 /tmp/root.sd mount /dev/sda1 /tmp/root.sata rsync -avx --progress /tmp/root.sd/ /tmp/root.sata/ umount /tmp/root.sata umount /tmp/root.sd
Cambio de los parámetros del Boot Loader
Para esto requeriríamos el paquete u-boot-tools. Solo he probado ha realizarlo en el Banana Pi, pero seguro que funciona en otra máquina diferente, incluso de otra arquitectura.
- Instalamos u-boot-tools
aptitude install u-boot-tools
- Modificamos los parámetros del fichero boot.cmd:
mkdir /tmp/boot mount /dev/mmcblk0p1 /tmp/boot vi /tmp/boot/boot.cmd
- Ahora toca cambiar todas las entradas root=/dev/mmcblk0p1 por root=/dev/sda1. La forma fácil es usar una expresión regular desde el vi
:%s/mmcblk0p1/sda1/
- Regeneramos el fichero boot.scr:
cd /tmp/boot/ mkimage -C none -A arm -T script -d boot.cmd boot.scr cd umount /tmp/boot/ sync
Referencias
http://www.lemaker.org/product-bananapro-specification.html
https://en.wikipedia.org/wiki/Das_U-Boot