GNU/Linux >> Linux Esercitazione >  >> Linux

Il raid di Linux scompare dopo il riavvio

Questa ricetta ha funzionato per me dopo aver avuto lo stesso problema. Ho cercato in tutta la rete cercando di trovare la risposta, e alla fine mi sono imbattuto in questo, e ancora nessun aiuto.

Il problema a mio avviso è multiplo.

  1. mdadm riassegna i file del dispositivo da /dev/md0 a qualcosa come /dev/md127 al prossimo riavvio. Quindi non puoi semplicemente usare il file del dispositivo in fstab. Ho finito per usare l'UUID, dal filesystem creato.

  2. Quasi tutti i tutorial di configurazione dell'unità RAID sul Web mostrano la creazione del dispositivo RAID utilizzando i file del dispositivo del driver in questo modo:

    mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd
    

    Invece ho usato i file del dispositivo di partizione, come questo:

    mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
    

    La seconda forma richiede la corretta creazione di partizioni su ciascun disco utilizzando gdisk o fdisk . Ho usato gdisk e gli ho assegnato il tipo fd00 , che è una partizione raid.

  3. Si parla molto della necessità di aggiornare /etc/mdadm/mdadm.conf . Questo è sbagliato. Ho volutamente cancellato quel file. Non è necessario. (Vedi sotto)

Questo è davvero tutto quello che c'è. Segue la ricetta completa...

Partiziona ogni unità con una partizione di tipo fd00 , RAID Linux:

[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.

Ora dovresti vedere sia i dispositivi del disco che i dispositivi di partizione in /dev

[email protected]:~# ls /dev/sd[a-d]*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdd /dev/sdd1

Ora crea il RAID di tua scelta con mdadm usando i file del dispositivo di partizione, non i dispositivi del 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.

Ora controlla in /dev/disk per vedere se c'è qualche UUID associato al tuo nuovo /dev/md0 RAID.Non dovrebbe essercene nessuno.

[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

Crea il nuovo filesystem, dopodiché dovresti avere 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

Voilà, eccolo qui.

[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

Modifica il tuo /etc/fstab e aggiungi il mount per il tuo nuovo RAIDAssicurati di utilizzare l'UUID e non il file 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

Qui, non guardare /etc/mdadm/mdadm.conf Non è necessario.

[email protected]:~# ls -l /etc/mdadm
total 0

Riavvia

[email protected]:~# reboot
Connection to 192.168.0.131 closed by remote host.
Connection to 192.168.0.131 closed.

Il RAID è montato, ma mdadm ha rinominato il file del dispositivo da md0 a md127

Per fortuna abbiamo usato l'UUID e non il file del dispositivo vero e proprio.

[email protected]:~# df /md0/tweets
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md127 10658016696 73660 10120737636 1% /md0/tweets

Guarda md0 è andato da /dev

[email protected]:~# ls /dev/md*
/dev/md127

/dev/md:

Questo è tutto. Ora mi sto godendo il mio RAID0 da 10 Terabyte che funziona a oltre 600 MB/sec

[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

Il tuo /proc/mdstat indica che nessuna delle personalità RAID (ad es. RAID1, RAID5, ecc.) è stata caricata, quindi non viene fatto alcun tentativo nemmeno di provare ad attivare un set RAID.

Failed to start mdadm.service: Unit mdadm.service is masked.

Questo messaggio indica mdadm.service è stato disabilitato nel modo più efficace possibile:non verrà fatto alcun tentativo esplicito di avviare il servizio e, anche se qualcos'altro dipende da questo servizio, non verrà avviato.

Come nella domanda collegata da roaima, prova a eseguire questi comandi come root:

dpkg-reconfigure mdadm    # Choose "all" disks to start at boot
update-initramfs -u       # Updates the existing initramfs

Il primo riconfigurerà il mdadm pacchetto e dovrebbe rilevare tutti i set RAID e consentire di scegliere quali set RAID attivare automaticamente all'avvio:di solito "tutto" è una buona risposta. Questo dovrebbe occuparsi anche del mdadm.service essere mascherato, se ho capito bene.

Fatto ciò, il secondo comando aggiornerà il tuo initramfs, in modo che i file di configurazione aggiornati vengano aggiornati anche nel tuo initramfs e gli script che verranno eseguiti nelle prime fasi di avvio riceveranno l'informazione che esiste un set RAID che dovrebbe essere attivato.


Linux
  1. Linux – Riavviare solo lo spazio utente?

  2. Comando di riavvio di Linux

  3. mdadm:comando non trovato

  4. Come si pianifica un riavvio su Linux?

  5. Linux:comando di pianificazione da eseguire una volta dopo il riavvio (equivalente a RunOnce)

Comando di riavvio (riavvio) di Linux

10 cose da fare dopo aver installato Linux Mint 16 Petra

Riavvia il comando in Linux con esempi

Come riavviare Linux Mint 20

Cose da fare dopo l'installazione di Linux Mint 20 "Ulyana"

RAID Linux