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. En el mercado podemos encontrar un gran número de clases de tarjetas SD. Cada clase, ofrece unas velocidades de lectura y escritura diferentes, algo que no vamos a encontrar en una conexión USB, a no ser que utilicemos, como hemos comentado, una unidad SSD de almacenamiento. Conforme el número de la clase de la tarjeta es mayor, la velocidad de lectura y escritura será mayor, al igual que su precio. Si queremos disfrutar de la mayor velocidad en una Raspeberry Pi, lo mejor que podemos hacer es invertir en una tarjeta SD de calidad, no confiar en la primera que veamos por internet.
Instalar Linux en el Raspberry Pi con una micro-SD
Una de las características, para bien o para mal, del Raspberry Pi es que no tiene almacenamiento interno. Al contrario que algunos de sus clones, que han apostado por esta característica, RPi no ofrece la posibilidad de, ni siquiera, instalar el sistema operativo en su interior. Para todo lo que sea almacenamiento (sistema, datos, programas, etc) está la ranura de la micro-SD.
En esta ranura, que podemos encontrarla en la parte inferior trasera del dispositivo, podemos introducir una tarjeta de memoria de la capacidad que queramos, o necesitemos. Además, podemos elegir entre gastar más o menos dinero igualmente en función de la calidad y el rendimiento que queramos.
Esto tiene algunas ventajas, como la comodidad de poder llevar varios sistemas en muy poco espacio, o la posibilidad de ampliar la capacidad con solo cambiar la tarjeta. Pero también tiene inconvenientes, siendo el más grave el rendimiento inferior de estas tarjetas frente a un almacenamiento integrado en la propia placa.
Este micro-ordenador está pensado, especialmente, para funcionar con sistemas Linux (aunque tenemos la posibilidad de instalar algunas ediciones de Windows específicas). Para instalar un sistema en nuestro RPi, lo primero que necesitamos es un ordenador y un lector de tarjetas. Y, a partir de aquí, podemos seguir dos caminos diferentes.
El primero de ellos es usar el programa oficial de los creadores del micro-ordenador, Raspberry Pi Imager, desde el que vamos a poder bajar las últimas versiones de los sistemas más populares, configurarlos (en el caso de Rasberry Pi OS) y grabarlo directamente a la tarjeta de memoria. Una vez completado el proceso, simplemente la extraemos del ordenador, la conectamos al Raspberry Pi, y a funcionar.
También podemos bajar nosotros los sistemas a parte (en caso de que no estén incluidos dentro de este programa) y grabarlos a mano. Estos sistemas suelen estar en formato IMG, por lo que no vale con copiar el archivo tal cual a la tarjeta, sino que debemos grabarlo como imagen a la tarjeta de memoria. Y para ello podemos usar, o bien el programa Win32 Disk Imager, en Windows, o el comando «dd» si somos usuarios de Linux.
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. La principal ventaja de utilizar un USB es que, además de almacenar el sistema operativo, también se puede utilizar como unidad de almacenamiento, aunque se corre el riesgo de que la partición de arranque se corrompa y deje funcionar. Lo mismo sucede si utilizamos una tarjeta SD, por lo que independientemente del método que utilicemos, lo mejor que podemos hacer es utilizar un método con uso exclusivo para la RPi.
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.
Arrancar Raspberry Pi Pico
Las Raspberry Pico es el último modelo que ha lanzado la compañía, un modelo que no incluye ningún tipo de puerto, por lo que no vamos a poder utilizar ni un puerto USB ni una tarjeta SD para arrancarlo, viéndonos obligados a utilizar un ordenador para poder gestionarlo y configurarlos para el fin que queramos darle. Este modelo está destinado para ser utilizados en dispositivos conectados, como por ejemplo cámaras de seguridad, sensores de movimiento, automatizaciones entre otros muchos usos donde el límite se encuentra en la imaginación de los usuarios.
Instala dos Linux a la vez con BerryBoot
BerryBoot es un bootloader, similar a NOOBS, que debemos copiar en la tarjeta de memoria de nuestro Raspberry Pi y arrancar el micro-ordenador con ella. En lugar de arrancar el sistema operativo principal, lo que hace el RPi es cargar este sistema en primer lugar, el cual actúa como un gestor de arranque para el equipo.
Para ponerlo en marcha, lo primero que debemos hacer es descargar la última versión desde su web. Esta ocupa unos 47 megas, y es compatible con los Raspberry Pi 3, 4 y 400. Una vez bajada la versión, lo siguiente que haremos será descomprimir directamente el contenido del archivo ZIP en nuestra tarjeta de memoria (formateada en FAT) e introducirla en el Raspberry para usarla. Sus desarrolladores han empaquetado BerryBoot para que no haya falta usar un programa de grabación, lo que simplifica su funcionamiento.
Al arrancar por primera vez, veremos un sencillo asistente inicial donde configurar la red, la zona horaria y la distribución del teclado, entre otras opciones. El propio programa se encargará de formatear la tarjeta de memoria de nuevo y adaptarla a su funcionamiento.
A continuación, lo que debemos hacer es elegir dónde vamos a instalar los sistemas operativos. Podemos hacerlo en la propia tarjeta de memoria que tenemos introducida, o en un disco duro que hayamos conectado por USB. Eso sí, si elegimos la segunda opción necesitaremos seguir usando la SD para arrancar el bootloader.
Ahora llega la parte importante del programa: elegir los sistemas que queremos bajar e instalar. Podremos ver una lista con todos los sistemas disponibles, y seleccionando cualquiera de ellos podremos bajarlo y prepararlo. Primero bajaremos solo un sistema, pero podremos añadir otros sistemas operativos más adelante.
BerryBoot se encargará de descargar la última versión de la distro Linux que queramos usar, y copiarla a la tarjeta de memoria. Además, añadirá una entrada en su propio menú de arranque para que nos aparezca al encender el micro-ordenador por primera vez.
Desde este menú de arranque podremos añadir más sistemas operativos. También podremos renombrar los que ya tenemos instalados, borrarlos, elegir el favorito para el arranque automático o editar sus propiedades avanzadas, entre otras cosas. Así, cada vez que arranquemos el Raspberry Pi, podremos elegir el sistema operativo que queremos cargar sin necesidad de cambiar, una y otra vez, de tarjeta de memoria.
Ahora bien, ¿merece la pena un arranque dual? Hacer un Dual Boot en un ordenador tiene sentido, ya que no podemos estar conectando y desconectando discos duros o SSD cada vez que queramos cambiar de sistema operativo (por ejemplo, entre Windows y Linux). Pero ¿realmente merece la pena en el Raspberry Pi?
Como hemos explicado, una de las ventajas del Raspberry Pi es no tener almacenamiento interno, sino poder conectar una tarjeta de memoria con el software que nosotros queramos. De esta manera, con solo cambiar la tarjeta de memoria podemos cambiar entre un sistema operativo y otro. El arranque dual en el Raspberry Pi, por tanto, no tiene tanto sentido como en el PC. Es necesario reiniciar igualmente para poder cambiar el sistema, y no aporta más ventajas. Lo único en lo que es útil esta configuración es cuando, por ejemplo, no tenemos acceso fácil al Raspberry Pi. O si somos muy vagos como para cambiar de tarjeta, que también puede ser.
Problemas a la hora de iniciar una Raspberry Pi
Aunque la teoría apunta a que las tarjetas microSD están diseñadas para extraerse de los dispositivos y conectarse a otros, la práctica es muy diferente, especialmente cuando se trata de tarjetas de memoria económicas.
Si tenemos una tarjeta SD de las económicas, no es recomendable utilizarla para transferir datos a la Raspberry, ya que corremos el riesgo de que los contactos de la tarjeta se deteriores y, con el tiempo, este deje de funcionar. Si queremos transferir datos de una Raspberry a un PC, o viceversa, podemos montar un servidor SAMBA y transferir datos, a través de nuestra conexión Wi-Fi.
En caso de que hayamos invertido algo más de dinero en una tarjeta SD de calidad, tampoco es recomendable ir cambiándola de equipo en equipo para transferir datos, ya que, además, también corremos el riesgo de dañar los componentes de la Raspberry que se encargan de leerla, el mismo problema al que también nos vamos a enfrentar si utilizar una tarjeta SD económica. La solución, una vez más, pasa por utilizar un servidor SAMBA para transferir datos.
Si hablamos de los problemas con los puertos USB, el más habitual es que la unidad no acabe de iniciarse porque el puerto no suministra la suficiente energía necesaria. Este problema suele ser habitual cuando utilizamos una unidad de almacenamiento en lugar de un pincho USB.
Al igual que sucede con los lectores de tarjeta SD de una Raspberry, si queremos evitar que, con el tiempo, el puerto acabe por soltarse de la placa, no es recomendable utilizar el disco duro para transferir un único archivo, sino que, ya que lo conectamos debemos aprovechar para copiar el máximo número de archivos posible. Si únicamente queremos copiar un archivo, la solución para, por montar un servidor SAMBA.
Los puertos USB al igual que los lectores de tarjetas de una Raspberry no están diseñados para tener el mismo uso que los de un ordenador, por lo que, si queremos maximizar su vida útil, no es recomendable darles el mismo uso que los un PC.