RAID 0 (Striping)
RAID 1 (Mirroring)
RAID 5 (Striping avec parité)
RAID 6 (Double parité)
RAID 10 (1+0)
# Installation mdadm
apt install mdadm
# Création partitions RAID
fdisk /dev/sdX
# Type Linux RAID autodetect (fd)
# RAID 1 (mirror)
mdadm --create /dev/md0 \
--level=1 \
--raid-devices=2 \
/dev/sda1 /dev/sdb1
# RAID 5
mdadm --create /dev/md0 \
--level=5 \
--raid-devices=3 \
/dev/sda1 /dev/sdb1 /dev/sdc1
# RAID 10
mdadm --create /dev/md0 \
--level=10 \
--raid-devices=4 \
/dev/sd[abcd]1
# Sauvegarder configuration
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
# Mettre à jour initramfs
update-initramfs -u
# Formatage
mkfs.ext4 /dev/md0
# Montage
mkdir /mnt/raid
mount /dev/md0 /mnt/raid
# Montage permanent (fstab)
echo '/dev/md0 /mnt/raid ext4 defaults 0 2' >> /etc/fstab
# Vérifier état
cat /proc/mdstat
# Détails RAID
mdadm --detail /dev/md0
# Vérifier tous les arrays
mdadm --examine --scan
# Configuration monitoring
echo 'MAILADDR root' > /etc/mdadm/mdadm.conf
mdadm --monitor --scan --daemonize
# Test notification
mdadm --monitor --scan --test
# Arrêter array
mdadm --stop /dev/md0
# Démarrer array
mdadm --assemble /dev/md0
# Ajouter spare
mdadm /dev/md0 --add /dev/sdd1
# Retirer disque
mdadm /dev/md0 --remove /dev/sdd1
# Vérifier cohérence
echo check > /sys/block/md0/md/sync_action
# Forcer resync
echo repair > /sys/block/md0/md/sync_action
# Identifier disque défaillant
mdadm --detail /dev/md0
# Vérifier les logs
dmesg | grep md0
# Marquer disque comme failed
mdadm /dev/md0 --fail /dev/sdb1
# Retirer disque
mdadm /dev/md0 --remove /dev/sdb1
# Ajouter nouveau disque
mdadm /dev/md0 --add /dev/sdd1
# Sauvegarder metadata
mdadm --examine --scan > /root/mdadm.config
# Récupérer array
mdadm --assemble --scan --config=/root/mdadm.config
# Forcer assemblage
mdadm --assemble --force /dev/md0 /dev/sd[abc]1
# Récupération partielle
mdadm --run /dev/md0
# Démarrer en mode dégradé
mdadm --assemble --run /dev/md0 /dev/sda1 /dev/sdb1
# Reconstruction forcée
mdadm --create --assume-clean /dev/md0 [options]
# Montage readonly
mount -o ro /dev/md0 /mnt/recovery
# Copie données
ddrescue /dev/md0 /backup/raid.img
# Stripe cache
echo 8192 > /sys/block/md0/md/stripe_cache_size
# Read-ahead
blockdev --setra 65536 /dev/md0
# Vitesse reconstruction
echo 100000 > /sys/block/md0/md/sync_speed_max
Planification
Monitoring
Maintenance
Sauvegarde
# Vérifier superblock
mdadm --examine /dev/sd[abc]1
# Forcer assemblage
mdadm --assemble --force /dev/md0
# Vérifier vitesse
cat /proc/sys/dev/raid/speed_limit_min
cat /proc/sys/dev/raid/speed_limit_max
# Ajuster vitesse
echo 100000 > /proc/sys/dev/raid/speed_limit_min
# Vérifier présence physique
ls -l /dev/sd*
# Scanner bus SCSI
echo "- - -" > /sys/class/scsi_host/hostX/scan