Esta receta funcionó para mí después de tener el mismo problema. Miré por toda la red tratando de encontrar la respuesta, y finalmente me encontré con esto, y todavía no encontré ayuda.
El problema, tal como lo veo, es múltiple.
-
mdadm reasigna los archivos del dispositivo desde
/dev/md0
a algo como/dev/md127
en el próximo reinicio. Por lo tanto, no puede simplemente usar el archivo del dispositivo en fstab. Terminé usando el UUID, del sistema de archivos creado. -
Casi todos los tutoriales de configuración de unidades RAID en la web muestran la creación del dispositivo RAID utilizando los archivos del dispositivo controlador como este:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd
En su lugar, utilicé los archivos del dispositivo de partición, así:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
La segunda forma requiere la creación adecuada de particiones en cada disco usando
gdisk
ofdisk
. Uségdisk
y lo asignó como tipofd00
, que es una partición raid. -
Se habla mucho de la necesidad de actualizar
/etc/mdadm/mdadm.conf
. Esto está mal. A propósito, eliminé ese archivo. No es necesario. (Ver más abajo)
Eso es realmente todo lo que hay también. Sigue la receta completa...
Particionar cada unidad con una partición de tipo fd00
, Linux RAID:
[email protected]:~# gdisk /dev/sda
Command (? for help): n
Partition number (1-128, default 1):
First sector (2048-3907029134, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-3907029134, default = 3907029134) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): fd00
Changed type of partition to 'Linux RAID'
Command (? for help): p
Disk /dev/sda: 3907029168 sectors, 1.8 TiB
Model: ST2000DM001-1ER1
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): F81E265F-2D02-864D-AF62-CEA1471CFF39
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 2048, last usable sector is 3907029134
Partitions will be aligned on 2048-sector boundaries
Total free space is 0 sectors (0 bytes)
Number Start (sector) End (sector) Size Code Name
1
2048 3907029134 1.8 TiB FD00 Linux RAID
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sda.
The operation has completed successfully.
Ahora debería ver tanto los dispositivos de disco como los dispositivos de partición en /dev
[email protected]:~# ls /dev/sd[a-d]*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdd /dev/sdd1
Ahora cree el RAID de su elección con mdadm usando los archivos del dispositivo de partición, no los dispositivos de disco
[email protected]:~# mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm: chunk size defaults to 512K
mdadm: /dev/sda1 appears to contain an ext2fs file system
size=471724032K mtime=Sun Nov 18 19:42:02 2018
mdadm: /dev/sda1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdb1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdc1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdd1 appears to contain an ext2fs file system
size=2930265540K mtime=Sun Nov 18 23:58:02 2018
mdadm: /dev/sdd1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
Ahora marca en /dev/disk
para ver si hay algún UUID asociado con su nuevo /dev/md0
RAID. No debería haber ninguno.
[email protected]:~# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 4777-FB10 -> ../../sdf1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 D616BDCE16BDAFBB -> ../../sde1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 e79571b6-eb75-11e8-acb0-e0d55e117fa5 -> ../../sdf2
Cree el nuevo sistema de archivos y, después de eso, ahora debería tener un UUID con /dev/md0
[email protected]:~# mkfs.ext4 -F /dev/md0
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 2685945088 4k blocks and 335745024 inodes
Filesystem UUID: 7bd945b4-ded9-4ef0-a075-be4c7ea246fb
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544, 1934917632,
2560000000
Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done
Voila, ahí está.
[email protected]:~# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 4777-FB10 -> ../../sdf1
lrwxrwxrwx 1 root root 9 Nov 22 04:43 7bd945b4-ded9-4ef0-a075-be4c7ea246fb -> ../../md0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 D616BDCE16BDAFBB -> ../../sde1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 e79571b6-eb75-11e8-acb0-e0d55e117fa5 -> ../../sdf2
Modifique su /etc/fstab y agregue el soporte para su nuevo RAIDAsegúrese de usar el UUID y no el archivo del dispositivo.
[email protected]:~# cat /etc/fstab
UUID=e79571b6-eb75-11e8-acb0-e0d55e117fa5 / ext4 defaults 0 0
UUID=4777-FB10 /boot/efi vfat defaults 0 0
/swap.img none
swap sw 0 0
UUID=7bd945b4-ded9-4ef0-a075-be4c7ea246fb /md0/tweets ext4 auto 0 0
Aquí, no busques /etc/mdadm/mdadm.conf
No es necesario.
[email protected]:~# ls -l /etc/mdadm
total 0
Reiniciar
[email protected]:~# reboot
Connection to 192.168.0.131 closed by remote host.
Connection to 192.168.0.131 closed.
El RAID está montado, pero mdadm ha cambiado el nombre del archivo del dispositivo de md0
a md127
Menos mal que usamos el UUID y no el archivo del dispositivo real.
[email protected]:~# df /md0/tweets
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md127 10658016696 73660 10120737636 1% /md0/tweets
Mira md0 se ha ido de /dev
[email protected]:~# ls /dev/md*
/dev/md127
/dev/md:
Eso es todo. Ahora disfruto de mi RAID0 de 10 terabytes que funciona a más de 600 MB/seg
[email protected]:~# hdparm -tT /dev/md127
/dev/md127:
Timing cached reads: 26176 MB in 1.99 seconds = 13137.47 MB/sec
Timing buffered disk reads: 1878 MB in 3.00 seconds = 625.13 MB/sec
Tu /proc/mdstat
indica que ninguna de las personalidades RAID (es decir, RAID1, RAID5, etc.) se ha cargado, por lo que no se intenta siquiera activar un conjunto RAID.
Failed to start mdadm.service: Unit mdadm.service is masked.
Este mensaje indica mdadm.service
ha sido deshabilitado de la manera más fuerte posible:no se realizará ningún intento explícito para iniciar el servicio, e incluso si algo más depende de este servicio, no se iniciará.
Como en la pregunta vinculada por roaima, intente ejecutar estos comandos como root:
dpkg-reconfigure mdadm # Choose "all" disks to start at boot
update-initramfs -u # Updates the existing initramfs
El primero reconfigurará el mdadm
paquete y debería detectar todos los conjuntos RAID y permitirle elegir qué conjuntos RAID activar automáticamente en el arranque:por lo general, "todos" es una buena respuesta. Esto también debería ocuparse del mdadm.service
estar enmascarado, si he entendido bien.
Una vez hecho esto, el segundo comando actualizará su initramfs, de modo que los archivos de configuración actualizados también se actualizarán en su initramfs, y los scripts que se ejecutarán en las primeras fases del arranque obtendrán la información de que hay un conjunto RAID. eso debería estar activado.