He seguido el procedimiento en los foros de Raspberry Pi para hacer que mi Raspberry Pi 3 use una llave USB en lugar de la tarjeta SD como sistema de archivos raíz con la esperanza de hacerlo más robusto para la pérdida de energía.
El proceso funcionó, pero perdí tiempo porque confundí UUID y PARTUUID para la partición (use blkid y vea cómo pueden ser diferentes). ¿Cuál es el propósito de ambos? Fue más simple solucionar mi confusión usando UUID en lugar de PARTUUID en todas partes, pero eso falló, tuve que usar PARTUUID (creo que hubiera sido posible usar una mezcla, pero no intenté buscar una).
Tenga en cuenta que la página citada sugiere que el UUID es para la unidad es PARTUUID para la partición, pero entonces esperaría que el UUID sea el mismo para todas las particiones de una unidad, ese no es el caso.
Respuestas:
Sobre la diferencia entre UUID y PARTUUID
Puede obtener algunas pistas sobre la diferencia entre
UUID
yPARTUUID
especificando la-p
opción.o cualquier dispositivo / partición que esté mirando. Es posible que haya notado que si hay varias particiones en el mismo
UUID
dispositivo,PARTUUID
es casi igual con el número de partición agregado.A
UUID
está garantizado para ser único. Hasta donde yo sé, las colisiones no sucederán dentro de la vida del universo. Sin embargo, notará quePARTUUID
es mucho más corto. Estos están destinados a ser "localmente" únicos, y es muy probable que ocurran colisiones entre todos los conocidosPARTUUIDs
.En UUID
Un UUID es simplemente un identificador único. Se usan para muchos propósitos diferentes. Puede generarlos usando la
uuidgen
función.Para leer más sobre UUID:
O internet:
página de manual para uuidgen
Algunos ejemplos más de uso de UUID
Para los sistemas GNU / Linux más nuevos, tendrá una lista de todas las particiones y sus UUID. Se genera un nuevo UUID para cada nueva partición. Por lo tanto, si vuelve a particionar una unidad determinada, todos los UUID blkid para esa unidad cambiarán.
Parte de la razón por la que los UUID se usan como identificadores de particiones y unidades es para mantener los identificadores incluso cuando las unidades se agregan o montan en un orden diferente. En un tiempo anterior,
fstab
tendría identificadores como/dev/sda1
... Esto tenía la desventaja de que posiblementesda1
era una unidad o partición físicamente diferente si de alguna manera se cambiaba el orden de montaje.Sobre PARTUUIDs
PARTUUIDs
son un componente de las Tablas de partición GUID (GPT) que son un reemplazo para la partición de disco relacionada con el Registro de arranque maestro (MBR).Para más información, consulte Linux.com: uso de la nueva tabla de particiones GUID en Linux
Linux.com dice:
fuente
blkid
.blkid -p
que lo llamamos PTUUID, hay un UUID de partición queblkid
llama a PARTUUID y algunos sistemas de archivos tienen un UUID que blkid llama a UUID. Todavía no estoy claro por qué tuve que usar el PARTUUID en lugar del UUID, al menos en algunos lugares, al mover el sistema de archivos raíz a una llave USB en la frambuesa cuando mi sistema Linux solo hace referencia al UUID, pero no soy voluntario para hacer algunas pruebas más y verificar dónde realmente hay una necesidad de PARTUUID y dónde aún podría usar el UUID si quisiera, pero supongo que solo locmdline.txt
necesita.Como yo lo entiendo.
El término UUID en general se refiere a un "identificador universalmente único", conocido en el mundo de Windows como GUID. Hay algunos esquemas diferentes, pero en su mayor parte los UUID / GUID modernos son esencialmente un gran número aleatorio o hash y algunos bits de bandera.
En el caso específico de montar sistemas de archivos en linux, "UUID" se refiere a un identificador único que forma parte de los metadatos almacenados dentro del sistema de archivos. "PARTUUID" se refiere a un identificador único para una partición almacenada o derivada de la tabla de particiones.
Estos identificadores únicos pueden o no ser UUID reales. Por lo que yo puedo decir.
Tenga en cuenta que la compatibilidad para montar el sistema de archivos raíz mediante "UUID" y "PARTUUID" varía. IIRC, el núcleo que se ejecuta sin un initrd puede montarse por "PARTUUID" pero no por "UUID". Las versiones anteriores de initramfs-tools se pueden montar por "UUID" pero no por "PARTUUID", las recientes initramfs-tools admiten ambos.
fuente