El Raspberry Pi 3 es la nueva versión de este mini-ordenador, una versión bastante más potente que las anteriores y que, además, cuenta con un gran número de funciones (como Wi-Fi y Bluetooth integrados) y características especiales no disponibles en las versiones anteriores de este mini-ordenador, como, por ejemplo, la posibilidad de arrancar un sistema operativo desde un USB o a través de Ethernet.
Hace más o menos un año os informamos de que los responsables de Raspberry Pi empezaban a trabajar, a modo de prueba, con una nueva función que permite arrancar en el Raspberry Pi 3 sistemas operativos desde otros medios que no sean la clásica tarjeta de memoria SD o Micro-SD, como, por ejemplo, cualquier dispositivo de almacenamiento masivo.
Esta función nos permite, por ejemplo, probar fácilmente y de una forma mucho más cómoda (especialmente si nuestro Raspberry Pi tiene una carcasa o está en un lugar al que no sea precisamente sencillo acceder) sistemas operativos si no tenemos a mano varias tarjetas de memoria y sin tener que sobrescribir la tarjeta de memoria habitual. Sin embargo, a pesar de que ha pasado ya casi un año desde que se lanzó esta característica en fase de pruebas, esta no termina de funcionar correctamente a muchos usuarios.
Por ello, a continuación, vamos a hablar de los principales problemas a la hora de intentar arrancar nuestro Raspberry Pi 3 desde una memoria USB y cómo intentar solucionarlos.
Problemas y soluciones al arranque desde USB en el Raspberry Pi 3
Lo primero que debemos asegurarnos es de estar utilizando el Raspberry Pi 3, ya que esta característica es exclusiva de este y no funciona en los modelos anteriores del mini-ordenador.
Comprobar que el modo de arranque desde USB se ha activado manualmente
La función de arranque desde USB (y desde Ethernet) no está habilitada por defecto en el firmware del mini-ordenador, sino que, para poder utilizarla, primero debemos habilitarla manualmente. Para ello, debemos asegurarnos de estar utilizando una versión de Raspbian posterior a la 2017-04-10 o, de lo contrario, debemos actualizar todos los componentes del sistema operativo ejecutando:
- sudo apt-get update && sudo apt-get upgrade
Una vez tenemos ya la última versión de Raspbian, debemos habilitar el arranque desde USB y Ethernet ejecutando el siguiente comando:
- echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
Una vez hecho esto, el modo de arranque USB estará ya habilitado. Para comprobar que efectivamente es así, podemos ejecutar el comando «vcgencmd otp_dump | grep 17:» y comprobar que el resultado que nos devuelve es «17:3020000a». De no ser así, el modo de arranque desde USB no estará habilitado.
Una vez habilitado el arranque, podemos volver a poner el valor a «0» para que, si conectamos la Micro-SD a otro Raspberry Pi, el arranque USB no se active en él.
Comprobar la compatibilidad de la memoria USB
Algunas memorias USB, como la Kingston Data Traveller 100 G3 32G, utilizan protocolos muy especiales que hacen que no sean compatibles con esta característica. Por ello, si intentamos arrancar nuestro Raspberry Pi desde ellos, este no será capaz de acceder a las rutinas de arranque y no podrá arrancar correctamente desde esta memoria.
Cada memoria USB es un mundo y, aunque seguro que muchos más modelos funcionan sin problemas, oficialmente, los responsables del Raspberry Pi garantizan el funcionamiento de esta característica con los siguientes modelos:
- Sandisk Cruzer Fit 16GB
- Sandisk Cruzer Blade 16Gb
- Samsung 32GB USB 3.0 drive
- MeCo 16GB USB 3.0
Además, algunas memorias USB, como la Verbatim PinStripe 64GB, tardan varios segundos en arrancar, por lo que el Raspberry Pi no tiene tiempo suficiente para detectarla y, por lo tanto, no arranca desde ella.
Por último, indicar que aunque es posible arranque un sistema operativo desde una memoria USB, aún necesitaremos tener una tarjeta micro-sd introducida, formateada en FAT32 y en cuyo interior esté el fichero bootcode.bin que se puede descargar desde GitHub.
¿Has conseguido arrancar un Raspberry Pi desde una memoria USB?