¿Cómo cargar Linux en un Raspberry Pi? Hazlo desde la SD o un USB

¿Cómo cargar Linux en un Raspberry Pi? Hazlo desde la SD o un USB

Rubén Velasco

El Raspberry Pi se ha convertido en uno de los micro-ordenadores más populares de los últimos tiempos. Un dispositivo, de apenas 40 euros, que funciona como un ordenador completo (y con una potencia más que aceptable). Este equipo está fabricado usando hardware libre, y diseñado para ejecutar sistemas operativos Linux. Pero no tiene nada de memoria flash para instalarle un sistema operativo, por lo que, para hacerlo funcionar debemos elegir entre instalar el sistema en una micro-sd o en una memoria USB y arrancar el RPi desde ella.

SD vs USB: ¿cuál es mejor?

El Raspberry Pi está diseñado para arrancar, por defecto, desde la micro-sd o desde una SD normal (en el caso del primer modelo). Sin embargo, debido a que muchos usuarios pedían la posibilidad de poder arrancar desde memorias USB, la compañía decidió habilitar dicha opción. De una forma u otra, cualquier modelo de Raspberry Pi puede arrancar desde la tarjeta de memoria o desde un pendrive. Eso sí, solo los modelos más modernos pueden hacerlo a través de la red. Sin embargo, no es la mejor forma de hacerlo.

Muchos tests de rendimiento han demostrado que arrancar el sistema y usar programas es mucho más rápido y fluido con una micro-SD que con un pendrive conectado a un puerto USB. El uso de un pendrive en el Raspberry hará que el micro-ordenador vaya mucho más lento que al usar una tarjeta de memoria, por lo que no merecerá la pena.

Lo que sí podemos hacer es conectar un SSD externo (en el Raspberry Pi 4), ya que hay escenarios (como usarlo de servidor web o servidor de archivos) en los que realmente mejora el rendimiento, pero otros muchos en los que el gasto no merece la pena.

Al final, la mejor opción, la que mejor rendimiento nos dará y con la que menos problemas tendremos es con una micro-sd de buena calidad.

Instalar Linux en el Raspberry Pi con una micro-SD

Este micro-ordenador viene configurado por defecto para arrancar el sistema operativo que se encuentre en la tarjeta de memoria. Da igual que sea Raspberry Pi OS, LibreELEC, Lakka, RetroArch e incluso NOOBS. Si introducimos la tarjeta de memoria, y conectamos este micro-ordenador, arrancará por defecto desde ella.

Lo único que debemos hacer es descargar el sistema operativo que queremos usar y grabarlo a la tarjeta de memoria. Esto podemos hacerlo, por ejemplo, usando el programa Raspberry Pi Imager, la solución más fácil para instalar el sistema que queramos en la tarjeta de memoria, ya que él se encargará de todo.

Raspberry Pi Imager - Instalar sistema 3

Arrancar el sistema del RPi desde un USB

La verdad es que teniendo la micro-SD, no hay ningún motivo para querer arrancar el Raspberry Pi desde otros medios. Las micro-SD hoy en día son muy baratas, y si compramos una de alta calidad vamos a obtener velocidades asombrosas. Podemos llevar siempre con nosotros varias micro-SD, una con cada sistema operativo, y usarlas como queramos. No hay restricciones. Pero siempre hay usuarios a la antigua usanza que prefieren usar memorias USB, igual que en un ordenador, para arrancar el sistema operativo.

Esto es posible hacerlo desde el modelo «Pi 2B», y dependiendo del modelo, el proceso puede variar un poco. Hay que indicar que estos métodos suelen habilitar también el arranque desde red.

Raspberry Pi 400

Este es uno de los últimos modelos fabricados hasta la fecha. Su principal finalidad es la de ofrecer a los usuarios un ordenador completo oculto dentro de un teclado de manera que solo necesitemos una pantalla y un ratón para poder utilizarlo.

En este modelo no tenemos que hacer nada especial. Simplemente debemos conectar la memoria USB al ordenador y, usando el software «Raspberry Pi Imager», grabar en ella el sistema operativo que queramos. Lo conectamos al Pi 400, lo encendemos y listo, no hay que hacer nada más.

Raspberry Pi 4B

En este modelo (otro de los más recientes), en algunas unidades viene activado por defecto mientras que en otras hay que activarlo a mano. Para comprobar si el nuestro lo tiene activado, lo que debemos hacer es conectarlo, sin micro-SD introducida, y comprobar en la pantalla si el bootloader es igual o superior a Sep 3 2020. Si es así, no tenemos que hacer nada más que grabar la imagen al USB con el software RPi Imager, mientras que si es anterior tendremos que actualizar el bootloader.

Esto podemos hacerlo desde el RPi Imager, seleccionando la opción «Raspberry Pi 4 EEPROM boot recovery» y creando una nueva micro-sd con la actualización (se encarga el programa de todo). Una vez lista, arrancamos el micro-ordenador con dicha tarjeta de memoria conectada y se actualizará el bootloader. Al acabar, comprobamos que efectivamente está todo correcto, la versión es Sep 3 2020 y listo.

Modelos antiguos (2B, 3A+, 3B…)

En estos modelos, el arranque desde USB no está activado por defecto. Por tanto, tendremos que activarlo nosotros mismos de forma manual para poder usarlo. Lo primero que necesitaremos para estos modelos es preparar una micro-sd con Raspberry Pi OS (Raspbian) y arrancar, como siempre, desde este medio de almacenamiento.

Una vez dentro, en el terminal, ejecutaremos el siguiente comando:

echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt

Una vez ejecutado el código, reiniciamos el RPi con «sudo reboot», y al arrancar comprobaremos que se ha aplicado el cambio ejecutando:

vcgencmd otp_dump | grep 17:

Si el valor de salida es igual a «0x3020000a», entonces ya hemos activado el arranque por USB en el Raspberry Pi.

Eso sí, debemos saber que el cambio realizado en el bit OTP es irreversible, no se puede deshacer. Lo que sí podemos hacer es desactivar el arranque por USB quitando la línea «program_usb_boot_mode» del config.txt para que solo podamos arrancar de nuevo desde el USB.

Arrancar desde USB en el Pi 1, 2 y Zero

Por último, los modelos más antiguos basados en los chips BCM2835 y BCM2836 también tienen un pequeño «truco» para conseguir esto mismo. Lo que debemos hacer en este caso es descargar el archivo bootcode.bin y copiarlo a la raíz de una SD o micro-SD formateada en FAT32. Lo que hace en este caso el Raspberry Pi es cargar este fichero en primer lugar, y dentro de él se encuentran las instrucciones necesarias para continuar la carga desde un puerto USB.

Eso sí, debemos tener en cuenta que para poder usar este método debemos tener siempre insertada la tarjeta de memoria en el Raspberry Pi con este fichero. Si la quitamos, no arrancará desde el USB de ninguna manera.