¿Hay alguna manera de arrancar desde un disco duro externo conectado al dispositivo a través del puerto USB (en lugar de arrancar desde la tarjeta SD)?
¿Hay alguna manera de arrancar desde un disco duro externo conectado al dispositivo a través del puerto USB (en lugar de arrancar desde la tarjeta SD)?
Respuestas:
Ahora, casi cinco años después de que el autor hizo originalmente esta pregunta,
Raspberry Pi admite oficialmente el arranque desde un dispositivo de almacenamiento masivo USB .
Sin embargo, esto solo es compatible con Raspberry Pi 3 . Este es el por qué:
¿Será posible arrancar un Pi 1 o Pi 2 usando MSD?
Lamentablemente no. El código de arranque se almacena solo en el dispositivo BCM2837, por lo que Pi 1, Pi 2 y Pi Zero requerirán tarjetas SD.
No es posible iniciar RPi desde USB directamente en el verdadero sentido de la palabra. Sin embargo, no hay nada que impida que alguien haga una mini-distribución que contendría / boot y algún tipo de gestor de arranque. Esto podría implementar el arranque desde USB o incluso un entorno de estilo PXE. Esto podría caber en una pequeña tarjeta SD: las tarjetas de 64 MB ahora están disponibles por centavos. Espero que alguien haga una distribución para esto, pero no he encontrado una hasta la fecha.
Mientras tanto, puede mover su propia partición raíz al disco duro para obtener tiempos de arranque más rápidos, pero es algo complicado ya que necesitará obtener un núcleo que admita almacenamiento USB. Se pueden encontrar buenas instrucciones sobre cómo hacer esto en: http://mitchtech.net/raspberry-pi-root-fs-on-usb-drive/
De las preguntas frecuentes de Raspberry Pi :
Debe arrancar desde SD pero un USB HD puede "hacerse cargo" después del arranque inicial. No puede arrancar sin una tarjeta SD.
De hecho, si puede vivir solo con la partición SD MS-DOS (/ boot) donde reside el núcleo, puede tener / root y todo lo demás en un dispositivo externo. La tarjeta de memoria USB o un disco duro físico están bien como unidad secundaria. Lo bueno es que, a menos que se 'dd' a la ubicación incorrecta, este es un procedimiento no destructivo: una edición y vuelve al original,
Para configurar esta configuración es bastante fácil. Configura su instalación como de costumbre y mueve / copia la partición EXT4 a la unidad externa.
Usando ' fdisk
' particionar su unidad secundaria seleccionada, cree una partición del mismo tamaño o mayor que su mmcblk0p2 actual (o mmcblk0p5). Guarde la nueva configuración.
Busque el nombre de la partición, en este ejemplo, '/ dev / sda5', sin embargo, esta partición dependerá de su configuración.
Copie la partición en ejecución (nota: no es aconsejable copiar una partición en ejecución, algunos archivos están en estado 'inestable' o abierto, sin embargo, funcionan bien):
dd if=/dev/mmcblk0p2 of=/dev/sda5 bs=10M
ahora, edite la siguiente línea en el archivo /boot/cmdline.txt y modifique la ubicación 'raíz':
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
A esta nueva línea.
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/sda5 rootfstype=ext4 elevator=deadline rootwait
Tenga en cuenta que la partición de arranque es MS-DOS, por lo que si tiene que arreglarlo, puede montar la SD en otro lugar y editar. Si el arranque falla, el cargador mostrará en su pantalla (HDMI) los puntos de montaje disponibles.
Esta configuración depende del orden de montaje. El número de partición puede cambiar si el dispositivo está montado en otra ranura; puede hacer que esta ubicación sea independiente de la siguiente manera.
Encuentra el dispositivo 'UUID'
blkid /dev/sda5
/dev/sda5: UUID="13d368bf-6dbf-4751-8ba1-88bed06bef77" TYPE="ext4"
o crear uno nuevo
tune2fs -U random /dev/sda5
y obtener el nombre recién asignado
blkid /dev/sda5
/dev/sda5: UUID="25b6aa72-ddc4-485e-8044-900ac24d662b" TYPE="ext4"
luego edite el cmdline.txt modificado previamente cambiando la ubicación raíz a:
root=UUID=25b6aa72-ddc4-485e-8044-900ac24d662b
Después de iniciar la nueva configuración, edite el fstab, elimine la nota anterior / mmcblk0p2: Este es un archivo que estará en el 'nuevo' / dispositivo raíz
Reemplazar / dev / mmcblk0p% (% es la partición de Linux)
nano /etc/fstab
UUID=25b6aa72-ddc4-485e-8044-900ac24d662b ...
En raspbian, simplemente cambie la root
bandera /boot/cmdline.txt
a root=/dev/sdaX
donde X
está el número de la partición apropiada.
Para obtener detalles sobre cómo obtener raspbian en su usb, etc., puede consultar aquí http://blog.krastanov.org/2014/01/30/booting-pi-reliably-from-usb/
En su lugar, utilicé Windows para el 100% de la creación.
Utilicé (el administrador de particiones MiniTool gratuito) y acabo de transferir el arranque a mi tarjeta SD más pequeña, que puede expandirse automáticamente con el administrador de particiones. Abra el cmdline.txt
y cambie a root=/dev/sda5
.
El mismo administrador de particiones me permitió copiar el ext4 en mi 1TB portátil (para su información, elimine todas las particiones de las unidades primero para que tenga espacio sin particiones antes de transferir). Vala - bota Estoy notando que con el HDD estándar, los tiempos de acceso son un poco escasos a pesar de que tienen velocidades R / W muy rápidas en comparación con la mayoría de las tarjetas SD.
El único problema que tengo ahora es expandir la partición ext4 (root) desde los 32GB originales (de mi tarjeta SD original). Por lo tanto, actualmente solo tengo 32 GB de 1 TB. Hmm Solo soy un novato con el terminal y sus comandos, por lo que particionar en Linux es un poco nervioso, pero esta guía me ayudó MUY bien.