Se creiamo un dispositivo MD su linux (sia raid 1 che raid 5) la ricostruzione inizia immediatamente.
Se vogliamo creare anche il filesystem e magari fare qualche prova appena effettuata la creazione possiamo andare incontro a rallentamenti veramente imbarazzanti (specie su dischi di grande capienza)
Si può ovviare a tutto questo creando un raid degradato – per il sistema è impossibile aggiornare il mirror o i dati di ridondanza quindi momentaneamente il raid non viene riallineato e lo possiamo utilizzare per fare le nostre prove.
vediamo come
# apt-get install mdadm
mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sda1 missing
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
se controlliamo lo stato del dispositivo:
# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sda1[0]
1953510841 blocks super 1.2 [2/1] [U_]
unused devices:
vediamo che è degradato ed in questo momento non c’è il riallineamento
possiamo creare il filesystem velocemente e fare tutte le prove del caso:
# mkfs.ext4 -m 1 -L RAID /dev/md0
mke2fs 1.41.12 (17-May-2010)
Etichetta del filesystem=RAID
Tipo SO: Linux
Dimensione blocco=4096 (log=2)
Dimensione frammento=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
122101760 inode, 488377710 blocchi
4883777 blocchi (1.00%) riservati per l'utente root
Primo blocco dati=0
Maximum filesystem blocks=4294967296
14905 gruppi di blocchi
32768 blocchi per gruppo, 32768 frammenti per gruppo
8192 inode per gruppo
Backup del superblocco salvati nei blocchi:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848
Scrittura delle tavole degli inode: fatto
Creating journal (32768 blocks): fatto
Scrittura delle informazioni dei superblocchi e dell'accounting del filesystem: fatto
Questo filesystem verrà automaticamente controllato ogni 26 mount, o
180 giorni, a seconda di quale venga prima. Usare tune2fs -c o -i per cambiare.
appena finito aggiungiamo al raid il disco mancante; inizierà il riallineamento
# mdadm --manage /dev/md0 --add /dev/sdb1
mdadm: added /dev/sdb1
a questo punto parte la sincronizzazione dei due dischi:
cat /proc/mdstat
# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[2] sda1[0]
1953510841 blocks super 1.2 [2/1] [U_]
[>....................] recovery = 0.0% (1430016/1953510841) finish=788.5min speed=41258K/sec
unused devices:
e ci vorrà un bel pò…
🙂