Mdadm
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Commande | mdadm
|
| Rôle | Gérer le RAID logiciel Linux (périphériques /dev/mdX)
|
| Config | /etc/mdadm.conf, état dans /proc/mdstat
|
| Voir aussi | RAID · Smartmontools |
mdadm gère le RAID logiciel de Linux (« multiple devices », périphériques /dev/mdX).
Installation
yum install mdadm
Créer un RAID 0
mdadm --create /dev/md0 --level=raid0 --raid-devices=2 /dev/sdb1 /dev/sdc1
mkfs -t ext4 /dev/md0
# avec disque de spare
mdadm --create /dev/md0 --level=raid0 --raid-devices=2 /dev/sdb1 /dev/sdc1 --spare-devices=1 /dev/sdd1
Créer un RAID 0+1
Créer deux matrices RAID 1, puis les agréger en RAID 0 :
mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm --create /dev/md1 --level=raid1 --raid-devices=2 /dev/sdd1 /dev/sde1
mdadm --create /dev/md2 --level=raid0 --raid-devices=2 /dev/md0 /dev/md1
mkfs -t ext4 /dev/md2
Créer un RAID 5
mdadm --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1
mkfs -t ext4 /dev/md0
Sauvegarder la configuration
mdadm --detail --scan >> /etc/mdadm.conf
État du RAID
watch cat /proc/mdstat
mdadm --detail /dev/md0 # -D
mdadm --examine /dev/sdb1 # -E
Simuler une panne
mdadm /dev/md0 --fail /dev/sdb1
mdadm --detail /dev/md0
Remplacer un disque
# retirer le disque défectueux
mdadm /dev/md0 --remove /dev/sdb1
# effacer le superbloc avant réutilisation
mdadm --zero-superblock /dev/sda1
# ajouter le nouveau disque (partitionné à l'identique)
mdadm --manage /dev/md0 --add /dev/sdb1
mdadm --detail /dev/md0
Les superblocs RAID sont persistants, même après retrait d'un disque : d'où le --zero-superblock avant toute réutilisation.
Agrandir un volume RAID
mdadm /dev/md0 --add /dev/sde1
mdadm /dev/md0 --grow --backup-file=/fichier/sauvegarde --raid-devices=4
e2fsck -fp /dev/md0
resize2fs /dev/md0
e2fsck -fp /dev/md0
L'option --backup-file sécurise la reconfiguration.
Arrêt / relance
mdadm --stop /dev/md0 # arrêter
mdadm --assemble --scan /dev/md0 # relancer
mdadm --run /dev/md0 # forcer le démarrage
Migration RAID 1 → RAID 5
Attention, cette procédure détruit les données :
umount /array1
mdadm -S /dev/md0
mdadm -C /dev/md0 -l5 -n3 /dev/sdb10 /dev/sdb11 /dev/sdb12 -x1 /dev/sdb13
mount /dev/md0 /array1
mdadm -D /dev/md0
# mettre à jour le fichier de config
cp /etc/mdadm.conf /etc/mdadm.conf_old
echo "DEVICE partitions" > /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf
Voir aussi
- RAID — niveaux et principes
- Smartmontools — santé physique des disques