Instalación y puesta en marcha de una Raspberry PI 4.

Raspbian Logo
Raspberry / Raspbian

Vamos a realizar la instalación y puesta en marcha de una Raspberry PI 4 poniendo el /boot en una microSD y el / en un disco SSD. Con esto nos aseguramos una solución longeva minimizando la probabilidad de falla de la microSD.

Por fin llegó de china mi nueva Raspberry PI 4! (Llego hace unos días pero confieso que estuve jugando un poco antes de escribir).

La compre con una de las pocas carcasas de aluminio que estaban disponibles. No tiene refrigeración activa (solo disipador).

Las primeras impresiones sobre la Raspberry pi 4

A favor:

  • Mucho más rápida que la 3B+
  • USB 3.0 es una mejora imporante
  • 4Gb de RAM (existen opciones de 2Gb y 1Gb).
  • 2 Micro HDMI 4 K
  • Alimentación por USB-C

En contra:

  • Temperatura
  • No bootea del USB (al 14/10/2019 estás obligado a usar una microsd para el /boot)
  • Micro HDMI

Puesta en marcha de la Raspberry pi 4:

En primera instancia quiero tener un equipo de escritorio liviano que me permita realizar las operatorias diarias sin tener que prender la pc convencional.

Originalmente quería usar directamente un disco SSD para esta solución pero terminó siendo SSD más MicroSD.

El primer paso a realizar es descargar la imagen de Raspbian Buster con Desktop, finalizado este paso se debe descomprimir y desplegarla sobre nuestra MicroSD y SSD (no es un error de tipeo es en los dos dispositivos).

El primer paso. Descomprimir la imágen. Asumiendo que la descargaron en ~/Downloads/Raspbian, se debe ingresar a ese directorio y ejecutar el comando:

Unzip de Raspbian Buster
unzip 2019-09-26-raspbian-buster.zip

El siguiente paso es identificar que dispositivos en el sistema son el disco SSD y la microSD.

Ejecutando la siguiente línea el sistema nos arrojará la lista de particiones de los medios conectados al equipo. (Va a solicitar la contraseña de sudo para ejecutar el comando «fdisk -l» (lista partiones, no ejecuta cambios sobre el equipo).

for i in {a..z}; do if [[ -e /dev/sd$i ]]; then sudo fdisk -l /dev/sd$i ; echo -e '\n'; fi ; done
Salida del comando mostrando dos discos y particiones de los medios conectados al equipo

Vamos a trabajar en este caso en el dispositivo /dev/sdc (microsd de 14.9Gib~16Gb) y en el /dev/sdd (ssd de 223.6Gib ~ 240Gb).

El /dev/sda es el disco de mi equipo Ubuntu, tipicamente sobre el /dev/sda no deberíamos trabajar nunca.

A continuación vamos a proceder a copiar la imagen del Raspbian en la microSD. Con el comando «dd» adecuar al la ruta, y nombre de la imagen descargada y el medio a impactar.

sudo dd if=./2019-09-26-raspbian-buster-lite.img of=/dev/sdc bs=10240 status=progress
Captura de pantalla de «dd» impactando la imagen Rasbpian Buster Lite en el /dev/sdc

A continuación vamos a generar una partición ext4 que va a pasar a ser el root «/» en el disco SSD.

sudo parted /dev/sdd

Ya en el prompt del parted vamos a proceder a generar una partición gpt en el disco (en la captura avisa que ya esta creada porque era un disco que estaba siendo utilizado con anterioridad).

(parted) mktable gpt

Y ahora la creamos la partición ext4 para utilizar como root en el ssd.

(parted) mkpart primary ext4 0% 100%

Para finalizar imprimimos el estado de la tabla de particiones y salimos del parted.

(parted) print
(parted) quit
Procedimiento ejecutado en parted para crear tabla de particiones y la partición para el root de la Raspberry pi 4.

A continuación debemos proceder a formatear la nueva partición.

sudo mkfs.ext4 /dev/sdd1
Formateo de la partición de nuestro ssd en ext4 que vamos a utilizar como root en nuestra Raspberry PI 4.

Con tune2fs podemos definir el Label (nombre) de la partición.

sudo tune2fs -L rootfs /dev/sdd1

A cotinuación vamos a proceder a crear los puntos de montaje de las particiones de la microSD y el disco SSD, también vamos a montar dichas particiones.

mkdir -p /tmp/microssd-boot
mkdir -p /tmp/microssd-rootfs
mkdir -p /tmp/ssd-rootfs
sudo mount /dev/sdc1 /tmp/microssd-boot/
sudo mount /dev/sdc2 /tmp/microssd-rootfs/
sudo mount /dev/sdd1 /tmp/ssd-rootfs/

Con las particiones montadas vamos a proceder a copiar la partición root de la microsd a la partición que vamos a usar en el disco ssd. Para esto vamos a utilizar el comando rsync (permite mantener los permisos, links, etc y es muy rápido).

sudo rsync -axv /tmp/microssd-rootfs/ /tmp/ssd-rootfs

Identificamos el id de las particiones con las que vamos a trabajar.

sudo blkid |grep /dev/sd
Lista de particiones del sistema, enmarcadas en la caja roja las particiones de la microSD y el disco SSD.

El siguiente paso es adecuar los archivos del /boot de la microsd para que inicien desde la partición del disco. Para esto hay que adecuar el valor de la variable root=PARTUUID= por el valor de la partición root del disco SSD. En este caso el valor era «ba4d6385-08bd-4d5e-8a50-e1d78dae7888». También debemos remover la instrucción para ampliar el sistema de archivos (como nosotros vamos a usar una partición en el disco SSD y la hicimos por el tamaño completo no tiene sentido y nos ahorramos un menaje de error), se debe remover la sentencia «init=/usr/lib/raspi-config/init_resize.sh»

sudo vi /tmp/microssd-boot/cmdline.txt
Archivo cmdline.txt adecuando.

También vamos a proceder a habilitar el ssh en nuestro equipo. (Esto implica cierto riesgo ya que nuestra Raspberry PI 4 va a iniciar exponiendo el servicio con el usuario y contraseña por defecto, se recomienda hacer en una red segura).

sudo touch /tmp/microssd-boot/ssh

la siguiente adecuación es el archivo «/etc/fstab» de nuestro disco ssd que esta montado en el /tmp/ssd-rootfs/etc/fstab para cambiar el uuid de la partición.

sudo vi /tmp/ssd-rootfs/etc/fstab
Archivo fstab modificado para que refleje el identificador de partición del disco SSD

Finalizado este paso procedemos a desmontar las unidades.

sudo umount /dev/sdc1
sudo umount /dev/sdc2
sudo umount /dev/sdd1

Y borramos la segunda partición de la microSD (así tenemos la certeza de que el sistema levanta con el disco SSD).

sudo parted /dev/sdc
(parted) print
Lista de particiones antes del borrado de la partición del sistema.
(parted) rm 2
(parted) print 
(parted) quit
Lista de particiones en la memoria SD (queda sola el /boot)

Con esto podemos dar por terminada la adecuación. Solo queda instalar la microSD y conectar el SSD en el nuestra nueva Raspberry Pi 4. Buena suerte!

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.