Perché il mio RAID / dev / md1 viene visualizzato come / dev / md126? Mdadm.conf viene ignorato?


26

Ho creato un RAID con:

sudo mdadm --create --verbose /dev/md1 --level=mirror --raid-devices=2 /dev/sdb1 /dev/sdc1
sudo mdadm --create --verbose /dev/md2 --level=mirror --raid-devices=2 /dev/sdb2 /dev/sdc2

sudo mdadm --detail --scan ritorna:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

A cui l'ho aggiunto /etc/mdadm/mdadm.conf, vedi sotto:

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays

# This file was auto-generated on Mon, 29 Oct 2012 16:06:12 -0500
# by mkconf $Id$
ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat ritorna:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md2 : active raid1 sdb2[0] sdc2[1]
      208629632 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md ritorna:

brw-rw----   1 root disk      9,   1 Oct 30 11:06 md1
brw-rw----   1 root disk      9,   2 Oct 30 11:06 md2

Quindi penso che sia tutto a posto e riavvio.


Dopo il riavvio, / dev / md1 è ora / dev / md126 e / dev / md2 è ora / dev / md127 ?????

sudo mdadm --detail --scan ritorna:

ARRAY /dev/md/ion:1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md/ion:2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat ritorna:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md126 : active raid1 sdc2[1] sdb2[0]
      208629632 blocks super 1.2 [2/2] [UU]

md127 : active (auto-read-only) raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md ritorna:

drwxr-xr-x   2 root root          80 Oct 30 11:18 md
brw-rw----   1 root disk      9, 126 Oct 30 11:18 md126
brw-rw----   1 root disk      9, 127 Oct 30 11:18 md127

Non tutto è perduto, io:

sudo mdadm --stop /dev/md126
sudo mdadm --stop /dev/md127
sudo mdadm --assemble --verbose /dev/md1 /dev/sdb1 /dev/sdc1
sudo mdadm --assemble --verbose /dev/md2 /dev/sdb2 /dev/sdc2

e verifica tutto:

sudo mdadm --detail --scan ritorna:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat ritorna:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md2 : active raid1 sdb2[0] sdc2[1]
      208629632 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md ritorna:

brw-rw----   1 root disk      9,   1 Oct 30 11:26 md1
brw-rw----   1 root disk      9,   2 Oct 30 11:26 md2

Quindi, ancora una volta, penso che sia tutto a posto e riavvio.


Ancora una volta, dopo il riavvio, / dev / md1 è / dev / md126 e / dev / md2 è / dev / md127 ?????

sudo mdadm --detail --scan ritorna:

ARRAY /dev/md/ion:1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md/ion:2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

cat /proc/mdstat ritorna:

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md126 : active raid1 sdc2[1] sdb2[0]
      208629632 blocks super 1.2 [2/2] [UU]

md127 : active (auto-read-only) raid1 sdb1[0] sdc1[1]
      767868736 blocks super 1.2 [2/2] [UU]

unused devices: <none>

ls -la /dev | grep md ritorna:

drwxr-xr-x   2 root root          80 Oct 30 11:42 md
brw-rw----   1 root disk      9, 126 Oct 30 11:42 md126
brw-rw----   1 root disk      9, 127 Oct 30 11:42 md127

Cosa mi sto perdendo qui?

Risposte:


26

Ho trovato la risposta qui, RAID a partire da md127 invece di md0 . In breve, ho tagliato le mie definizioni /etc/mdadm/mdadm.conf da:

ARRAY /dev/md1 metadata=1.2 name=ion:1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 metadata=1.2 name=ion:2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

a:

ARRAY /dev/md1 UUID=aa1f85b0:a2391657:cfd38029:772c560e
ARRAY /dev/md2 UUID=528e5385:e61eaa4c:1db2dba7:44b556fb

e corse:

sudo update-initramfs -u

Sono tutt'altro che un esperto in questo, ma la mia comprensione è questa ...

Il kernel ha assemblato le matrici prima del tempo normale per assemblare le matrici si verifica. Quando il kernel assembla gli array, non usa mdadm.conf. Poiché le partizioni erano già state assemblate dal kernel, il normale assemblaggio di array che utilizza mdadm.conf è stato ignorato.

Calling sudo update-initramfs -udice al kernel di dare nuovamente un'occhiata al sistema per capire come avviarsi.

Sono sicuro che qualcuno con una migliore conoscenza mi correggerà / elaborerà questo.

Utilizzare la seguente riga per aggiornare initrd per ciascun rispettivo kernel esistente sul sistema:

sudo update-initramfs -k all -u

3
Sì, in realtà questo creerebbe nuovamente initrd per il kernel e includerebbe i file di configurazione rilevanti per la configurazione MD-RAID. Ciò significa che al momento della creazione dei dispositivi il kernel saprà come nominarli in base alle proprie impostazioni. Buona pesca. +1 ... btw: notato che questo è spiegato anche nell'argomento del forum collegato.
0xC0000022L

Ehi, questa risposta ha risolto un lento problema di inizializzazione RAID sul mio sistema Arch Linux. Occorrerebbero 5 secondi per mettere in funzione l'array RAID0 durante l'avvio. Dopo aver cambiato mdadm.conf come descritto ed eseguito mkinitcpio, ci vuole tempo trascurabile!
rep_movsd,

Non è possibile avviare Ubuntu 12.04 (Mint 13) senza questo. Non sono nemmeno riuscito a far montare il mio root FS dalla shell initramfs. Ci sono stati un sacco di errori dm-linear ed errori 'bad superblock' che cercavano di montare. Mi sono anche assicurato di rinominare il mio dispositivo md0 su 0 e il dispositivo md1 su 1. Non so se fosse necessario.
cmcginty,

6
sudo update-initramfs -u

era tutto ciò di cui avevo bisogno per sistemarlo. Non ho modificato nulla in /etc/mdadm/mdadm.conf.



0

Sono riuscito a replicare il problema nel modo seguente:

Quando "Software Updater" mi ha chiesto se volevo aggiornare i pacchetti (inclusa Ubuntu base "e il kernel, ho risposto: OK. Il kernel appena installato utilizzava le impostazioni del kernel / sistema correnti. Quindi ho creato l'array. Solo il kernel attualmente in esecuzione è stato aggiornato con le nuove impostazioni RAID. Una volta riavviato, il nuovo kernel non sapeva nulla del raid e gli ha dato un nome md127!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.