Vediamo come fare
Esempio Gestione Raid 1 con mdadm
Questa breve guida illustra la gestione di un Raid di tipo 1su un server linux con Suse 9.3.
Lo scenario fa riferimento ad un sistema Suse linux 9.3, con due dischi SATA impostati come sda e sdb e una configurazione delle partizioni in / e swap, dove md0 è lo swap e md1 è /. Dall’analisi dei log è risultato il disco sdb guasto e con il comando:
analizziamo il raidtab:
cat /etc/raidtab
output video del file raidtab:
# autogenerated /etc/raidtab by YaST2
raiddev /dev/md0
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
persistent-superblock 1
chunk-size 4
device /dev/sda1
raid-disk 0
device /dev/sdb1
raid-disk 1
raiddev /dev/md1
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
persistent-superblock 1
chunk-size 4
device /dev/sda2
raid-disk 0
device /dev/sdb2
raid-disk 1
controlliamo I punti di montaggio del file system:
cat /etc/fstab
output video dil file fstab
/dev/md1 / reiserfs acl,user_xattr 1 1
/dev/md0 swap swap pri=42 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
sysfs /sys sysfs noauto 0 0
controlliamo lo stato del raid:
cat /proc/mdstat
output video dello stato:
Personalities : [raid1]
md1 : active raid1 sda2[0]
77087808 blocks [2/2] [U_]
md0 : active raid1 sda1[0]
1060160 blocks [2/2] [U_]
unused devices: <none>
You have new mail in /var/mail/root
Sostituzione disco guasto
Il comando "mdadm" permette la completa amministrazione degli array. Ecco cosa fare:
mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0
mdadm: hot removed /dev/sdb1
mdadm /dev/md1 --fail /dev/sdb2 --remove /dev/sdb2
mdadm: hot removed /dev/sdb2
verifichiamo il file di stato:
cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda2[0]
77087808 blocks [2/1] [U_]
md0 : active raid1 sda1[0]
1060160 blocks [2/1] [U_]
unused devices: <none>
ora spegniamo il pc, sostituiamo il disco guasto, con un disco identico al disco funzionante o leggermente più grande riavviamo.
Riavviato il sistema, ripartizioniamo l'hard disk:
sfdisk -d /dev/sda | sfdisk /dev/sdb
ricreiamo il RAID:
mdadm /dev/md0 --add /dev/sdb1
mdadm /dev/md1 --add /dev/sdb2
controlliamo la ricostruzione del RAID con un "cat /proc/mdstat" :
Personalities : [raid1]
md1 : active raid1 sdb2[2] sda2[0]
77087808 blocks [2/1] [U_]
[>....................] recovery = 3.4% (2656192/77087808) finish=26.6min speed=46626K/sec
md0 : active raid1 sdb1[1] sda1[0]
1060160 blocks [2/2] [UU]
unused devices: <none>
ricordiamoci inoltre di istallare grub nel MBR del nuovo sdd:
grub> root (hd1,0)
grub> setup (hd1)
Abbiamo completato, controlliamo che la ricostruzione sia completa:
cat /proc/mdstat
output video dello stato:
Personalities : [raid1]
md1 : active raid1 sdb2[1] sda2[0]
77087808 blocks [2/2] [UU]
md0 : active raid1 sdb1[1] sda1[0]
1060160 blocks [2/2] [UU]
unused devices: <none>
il comando mdadm si può configurare /etc/mdadm.conf in modo da rendere più "coerente" la gestione.
Aiuto man mdadm