A pesar de que lo bueno de Raspberry es que es más o menos indestructible. Se aplica igualmente la advertencia de que no me hago responsable de los problemas técnicos derivados de este procedimiento. Y no olvidéis que si algo sale sale mal la SD no funcionará y tocará formatear y volver a emnpezar.
Este post ha sido enviado por un seguidor del blog, David Dominguez a través de la página de contacto.
Introducción
Hace falta un equipo con GNU/Linux
Suponiendo que el lector ya tiene nociones sobre Berryboot y la distro XBian para Raspberry Pi, vamos a explicar el proceso.
La imagen de la última versión de XBian se estructura de la siguiente forma:
- Partición 1 (partición de arranque):
/boot
- Partición 2 (con sistema de archivos «btrfs»):
/home/@
/root/@
La idea es crear una imagen tomando sólo la partición 2 y adaptarla para arrancar desde Berryboot, ya que utiliza su propio sistema de arranque.
Pasos:
- Instalar el software necesario.
> Debian:
>$ sudo apt-get install kpartx squashfs-tools
> Arch Linux:
>$ yaourt -S multipath-tools-git squashfs-tools
- En XBian, la imagen tiene 2 particiones (home y root), debemos montar la partición de «root».
$ sudo kpartx -av XBian_1.0_Beta_1.1.img
add map loop0p1 (252:5): 0 117187 linear /dev/loop0 1
add map loop0p2 (252:6): 0 3493888 linear /dev/loop0 118784 --> la que ocupa más tamaño.
sudo mount /dev/mapper/loop0p2 /mnt
Si tenemos problemas para montar la imagen, intentar esto y luego repetir el paso 2.$ sudo fdisk -lu XBian_1.0_Beta_1.1.img
Disk XBian_1.0_Beta_1.1.img: 652 MB, 652214272 bytes, 1273856 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Identificador del disco: 0x000f06a6
Disposit. Inicio Comienzo Fin Bloques Id Sistema XBian_1.0_Beta_1.1.img1 2048 71679 34816 c W95 FAT32 (LBA) XBian_1.0_Beta_1.1.img2 71680 1273855 601088 83 Linux
Ahora tomamos el sector de inicio de la partición de tipo «Linux» y lo multiplicamos por los «Units» indicados, a tener en cuenta que esto puede cambiar en otras imágenes, en este caso, ejecutamos lo siguiente…
$ sudo mount -t auto -o loop,offset=$((71680*512)) XBian_1.0_Beta_1.1.img /mnt
Desmontamos y volvemos a ejecutar el paso 2…
$ sudo umount /mnt
- Una vez montada la partición, realizamos las adaptaciones necesarias para utilizar con Berryboot.
$ sudo mv /mnt/home/@/xbian /mnt/root/@/home/
$ sudo rm -r /mnt/home
$ sudo mv /mnt/root/@/etc/fstab /mnt/root/@/etc/fstab.btrfs
$ sudo mv /mnt/root/@/etc/fstab.ext4 /mnt/root/@/etc/fstab
- Deshabilitamos los puntos de montaje definidos, ya que Berryboot definirá los suyos.
$ sudo sed -i 's/^\/dev\/mmcblk/#\0/g' /mnt/root/@/etc/fstab
- Creamos imagen convirtiendo a formato «squasfs» utilizado por Berryboot.
$ sudo mksquashfs /mnt/root/@ XBian_1.0_Beta_1.1_berryboot.img -comp lzo -e lib/modules
$ sudo umount /mnt
$ sudo kpartx -dv XBian_1.0_Beta_1.1.img
- Una vez creada la imagen cambiamos el propietario de root a tu usuario y fijamos los permisos, pongamos que por ejemplo el usuario de tu equipo es «david» (cambiar por el tuyo).
$ sudo chown -R david XBian_1.0_Beta_1.1_berryboot.img
$ sudo chmod 664 XBian_1.0_Beta_1.1_berryboot.img
- Copiar la imagen en un pendrive y cargar en Berryboot, desde el menu de inicio, mantener pulsado el botón «Add».
Arreglar xbian-config
:
Al iniciar xbian-config
no funciona, ni por SSH ni desde XBMC, hemos de actualizar a la última versión.
- Conectar a XBian por SSH.
- Realizar los siguientes pasos:
$ sudo apt-get install git
$ cd /home/xbian
$ git clone --depth 5 https://github.com/xbianonpi/xbian-config-bash.git
$ rm /usr/local/sbin/xbian-config
$ rm -r /usr/local/include/xbian-config/*
$ cd xbian-config-bash
$ cp xbian-config /usr/local/sbin/
$ cp -R functions /usr/local/include/xbian-config/
$ cp -R lang /usr/local/include/xbian-config/
$ cp -R modules /usr/local/include/xbian-config/
$ cp -R prereqs /usr/local/include/xbian-config/
$ cp -R struct /usr/local/include/xbian-config/
$ cp -R config /usr/local/include/xbian-config/
$ cp etc/bash_completion.d/* /etc/bash_completion.d/
$ cd /home/xbian/xbian-config-bash/gettext/
$ msgfmt -o /usr/share/locale/en/LC_MESSAGES/xbian.mo xbian.po
$ echo 'APT::Update::Post-Invoke-Success {"touch /var/lib/apt/periodic/update-success-stamp 2>/dev/null || true";};' > /etc/apt/apt.conf.d/15update-stamp
- Listo, reiniciar y probar.
Configuración de Overclocking en Berryboot
- En el menú de inicio de Berryboot, pulsamos el botón «Edit» para ir al editor de menú
- Pulsamos sobre el botón «>>» que hay junto al botón «Exit», nos aparecerán más opciones
- Pulsamos en el botón «Edit config» y se nos abrirá una ventana con el editor de configuración donde aparecen los ficheros que se utilizan para pasar opciones a la Raspberry al iniciar el sistema
- Vamos a la pestaña «config.txt» y añadimos las siguientes líneas antes de las opciones kernel e initramfs definidas por defecto: Opciones de Overclocking
Prevenir corrupcion de la tarjeta SD por overclocking
boot_delay=4 # segundos a esperar antes de arrancar el sistema
initial_turbo=45 # segundos a esperar antes de iniciar overclocking
arm_freq=950 # Mhz de frecuencia maxima del microprocesador
arm_freq_min=700 # Mhz de frecuencia minima del microprocesador
over_voltage=4 # aumentar el voltaje para incrementar la frecuencia del microprocesador
core_freq=400 # frecuencia máxima del core de GPU afecta a la cache L2
core_freq_min=250 # frecuencia mínima del core de GPU afecta a la cache L2
gpu_freq=450 # frecuencia máxima de toda la GPU del microprocesador
gpu_freq_min=250 # frecuencia mánima de toda la GPU del microprocesador
sdram_freq=450 # frecuencia máxima de la memoria RAM
sdram_freq_min=400 # frecuencia mínima de la memoria RAM
- Listo, pulsamos el botón «OK» para guardar y luego «Exit» para reiniciar.
- Para verificar que la configuración se carga correctamente, al iniciar XBian, conectar por SSH e introducir el siguiente comando para comprobar la frecuencia del procesador:
$ /opt/vc/bin/vcgencmd measure_clock arm
Al igual que hemos usado «arm», puedes usar los siguientes argumentos para más comprobaciones de frecuencia:[arm|core|h264|isp|v3d|uart|pwm|emmc|pixel|vec|hdmi|dpi]