Usando UUID's con mdadm

10

Estoy usando GPT como mi esquema de partición. Compruebo los UUID de mis particiones:

# ls -l /dev/disk/by-partuuid/
total 0
lrwxrwxrwx 1 root root 10 Oct 18 22:39 0793009a-d460-4f3d-83f6-8103f8ba24e2 -> ../../sdb3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 13f83c47-ad62-4932-8d52-e93626166e7f -> ../../sdc3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 1b247b1f-0b7b-419e-bc3b-0f90cbadb87c -> ../../sdc2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 224d5933-7a23-4833-b785-79a67c9b9306 -> ../../sda1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 2ff625b2-b96b-4ce5-b752-57cdf7092258 -> ../../sda3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 449956f9-7289-49ed-9a37-ed6be9264d1c -> ../../sdb1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a2a95e45-7e4c-4b20-a2bd-66d96e737590 -> ../../sdb2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a8c07f74-9d6d-4f45-9453-dd2e6998f100 -> ../../sda2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 c2c9e94c-9c73-4d6e-a4ec-2229f56152e8 -> ../../sdc1

Y agregue /dev/sdc2usando su UUID:

# mdadm /dev/md0 --add /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c
mdadm: added /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c

Pero cuando miro los detalles de la matriz RAID, informa en /dev/sdc2lugar del UUID.

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Thu Oct 18 21:52:43 2012
     Raid Level : raid1
     Array Size : 1048564 (1024.16 MiB 1073.73 MB)
  Used Dev Size : 1048564 (1024.16 MiB 1073.73 MB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Fri Oct 19 15:57:19 2012
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           Name : cow:0  (local to host cow)
           UUID : 9e691db1:f8fcc7d8:f56d9c11:1c202693
         Events : 47

    Number   Major   Minor   RaidDevice State
       2       8       34        0      active sync   /dev/sdc2
       1       8       18        1      active sync   /dev/sdb2
  1. ¿Es imposible construir una matriz RAID usando UUID?
  2. ¿O está usando el UUID pero informa el nombre normal para aumentar la legibilidad? En ese caso, ¿cómo puedo saberlo?
  3. Me gustaría usar UUID para poder mover los discos libremente en la máquina sin romper nada. ¿No te parece una buena idea?
Eliminado
fuente

Respuestas:

13

mdraid siempre le permite mover discos libremente en la máquina, independientemente de cómo agregue el disco a la matriz. Rastrea los discos por los metadatos RAID (superbloques) almacenados en el disco.

Tenga en cuenta que esto supone que mdadm puede encontrar los discos cuando ensambla las matrices. El valor predeterminado (especificado en /etc/mdadm/mdadm.conf) es normalmente DEVICE partitions, lo que significa mirar todas las particiones (en todos los discos) buscando superbloques RAID. Comprueba una coincidencia del nombre de matriz o UUID (dependiendo de lo que diga hacer en ese archivo de configuración), observe cómo ambos están en su --detailsalida.

Ejemplo:

DEVICE partitions
:
ARRAY /dev/md0 metadata=1.2 UUID=9e691db1:f8fcc7d8:f56d9c11:1c202693

Cuando se le /dev/md0pide que se ensamble , mdadm escaneará todas las particiones en el sistema buscando superbloques 1.2 con el UUID 9e691db1: f8fcc7d8: f56d9c11: 1c202693. Leerá el número de dispositivo, etc. de cada uno, y usará esa información para ensamblar la matriz.

Solo cambiaría la DEVICElínea si escanear todas las particiones es costoso. Por ejemplo, si tiene cientos de ellos, a través de la red. Luego, puede enumerar los dispositivos relevantes allí, como desee (por UUID debería funcionar bien).

derobert
fuente
¡Gracias! Por defecto mi /etc/mdadm/mdadm.confdice # by default (built-in), scan all partitions (/proc/partitions) and all containers for MD superblocks. alternatively, specify devices to scan, using wildcards if desired.. La DEVICElínea está comentada por defecto para Ubuntu. Pero supongo que el comportamiento predeterminado será muy perfecto. (No tengo tanto que tendrá que escanear)
Borrado el
¿Cómo saber el UUID de superblock para poner en el archivo de configuración?
Atenúa el
@Dims mdadm le dará el UUID para la matriz, blkid y varias otras herramientas para los dispositivos de bloque ... ¿Quizás haga una pregunta al respecto con detalles?
derobert