raid avec mdadm sur le disque système apres installation en debian lenny
Installation RAID1 Logiciel sous Linux Debian Lenny x64
Installation.
Installer un système Debian avec deux disques dur, laisser le deuxième disque (sdb) sans
partitions, voici une imprime d’écran des partitions faites pour ce document :
1. Installez les paquets nécessaires :
apt-get install initramfs-tools mdadm
Ensembles MD requis par le système de fichiers racine : all
2. Chargez les modules nécessaires du noyau :
modprobe md
modprobe linear
modprobe multipath
modprobe raid0
modprobe raid1
modprobe raid5
modprobe raid6
modprobe raid10
3. Partitionner le deuxième disque (sdb) avec les mêmes partitions sda :
sfdisk -d /dev/sda | sfdisk /dev/sdb
4. Changer les type de partitions sdb à « Linux raid autodetect » :
fdisk /dev/sdb
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): fd
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): fd
Command (m for help): t
Partition number (1-4): 3
Hex code (type L to list codes): fd
Command (m for help): w
5. Assurez-vous qu’il n’y a pas de restes d’autre RAID sur le disque dur :
mdadm –zero-superblock /dev/sdb1
mdadm –zero-superblock /dev/sdb2
mdadm –zero-superblock /dev/sdb3
6. Créer le RAID (md) et ajouter chaque partition du sdb (sdb1 -> md0, sdb2 -> md1 et
sdb3 -> md2) :
mdadm –create /dev/md0 –level=1 –raid-disks=2 missing /dev/sdb1
mdadm –create /dev/md1 –level=1 –raid-disks=2 missing /dev/sdb2
mdadm –create /dev/md2 –level=1 –raid-disks=2 missing /dev/sdb3
continue creating array? Y
7. Formater le RAID (md) :
mkswap /dev/md0
mkfs.ext3 /dev/md1
mkfs.ext3 /dev/md2
8. reconfigurer le fichier mdadm.conf :
cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig
mdadm –examine –scan >> /etc/mdadm/mdadm.conf
9. Monter le RAID md1 et md2 :
mkdir /mnt/md1
mkdir /mnt/md2
mount /dev/md1 /mnt/md1
mount /dev/md2 /mnt/md2
10. Modifier le fstab et mtab pour démarrer à partir du RAID :
sed -i ‘s:/dev/sda2:/dev/md1:g’ /etc/fstab
sed -i ‘s:/dev/sda3:/dev/md2:g’ /etc/fstab
sed -i ‘s:/dev/sda1:/dev/md0:g’ /etc/fstab
sed -i ‘s:/dev/sda3:/dev/md2:g’ /etc/mtab
sed -i ‘s:/dev/sda2:/dev/md1:g’ /etc/mtab
11. Modifier le grub sorte que si le démarrage échoue avec un disque, essaie l’autre :
nano /boot/grub/menu.lst
En dessous de la ligne default 0 ajouter : fallback 1
12. Modifier GRUB pour démarrer à partir du RAID, la liste de démarrage devrait
ressembler à :
nano /boot/grub/menu.lst
## ## End Default Options ##
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (RAID1 HD1)
root (hd1,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.26-2-amd64
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (NO RAID)
root (hd0,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/sda2 ro quiet
initrd /boot/initrd.img-2.6.26-2-amd64
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (single-user mode)
root (hd0,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/sda2 ro single
initrd /boot/initrd.img-2.6.26-2-amd64
### END DEBIAN AUTOMAGIC KERNELS LIST
13. Mettre à jour le ramdisk:
update-initramfs -u
14. Copiez le contenu de / vers /mnt/md1 :
cp -dpRxv / /mnt/md1/
15. Préparer GRUB :
grub
root (hd0,1)
setup (hd0)
root (hd1,1)
setup (hd1)
quit
16. Redémarrez le système pour démarrer sur le nouveau RAID 1 :
reboot
17. Changer le type de partition sda «Linux raid autodetect » :
fdisk /dev/sda
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): fd
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): fd
Command (m for help): t
Partition number (1-4): 3
Hex code (type L to list codes): fd
Command (m for help): w
18. Ajoutez le disque sda au RAID 1 :
mdadm –add /dev/md0 /dev/sda1
mdadm –add /dev/md1 /dev/sda2
mdadm –add /dev/md2 /dev/sda3
19. Attendez que le nouveau disque soit duplique :
watch cat /proc/mdstat
Una vez terminado el proceso presione Ctrl + C
20. reconfigurer le fichier mdadm.conf :
cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig
mdadm –examine –scan >> /etc/mdadm/mdadm.conf
21. Modifier GRUB pour démarrer à partir du RAID, la liste de démarrage devrait
ressembler à :
nano /boot/grub/menu.lst
## ## End Default Options ##
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (RAID1 HD0)
root (hd0,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.26-2-amd64
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (RAID1 HD1)
root (hd1,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.26-2-amd64
#title Debian GNU/Linux, kernel 2.6.26-2-amd64 (NO RAID)
#root (hd0,1)
#kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/sda2 ro quiet
#initrd /boot/initrd.img-2.6.26-2-amd64
#title Debian GNU/Linux, kernel 2.6.26-2-amd64 (single-user mode)
#root (hd0,1)
#kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/sda2 ro single
#initrd /boot/initrd.img-2.6.26-2-amd64
### END DEBIAN AUTOMAGIC KERNELS LIST
22. Modifiez la ligne kopt :
sed -i ’63s:/dev/sda2:/dev/md1:g’ /boot/grub/menu.lst
23. Mettre à jour le ramdisk:
update-initramfs -u
24. Éditer le fichier /etc/mdadm.conf et définir l’option MAILADDR pour envoyer des
alertes :
MAILADDR user@mail.com
25. Restart :
reboot
Tests.
1. Simuler la perte de l’un des disques durs (dans ce cas hdb) :
mdadm –manage /dev/md0 –fail /dev/sdb1
mdadm –manage /dev/md1 –fail /dev/sdb2
mdadm –manage /dev/md2 –fail /dev/sdb3
mdadm –manage /dev/md0 –remove /dev/sdb1
mdadm –manage /dev/md1 –remove /dev/sdb2
mdadm –manage /dev/md2 –remove /dev/sdb3
2. Maintenant, vous pouvez éteindre le système et remplacer le disque dur sdb :
3. Maintenant, vous pouvez afficher l’état du RAID, remarquez qu’il manque de
disques :
cat /proc/mdstat
Reconstruire un disque dur.
1. Après avoir remplacé le disque hdb, créer la table de partitions :
sfdisk -d /dev/sda | sfdisk –force /dev/sdb
2. Assurez-vous qu’il n’y a pas de restes d’autre RAID sur le disque dur :
mdadm –zero-superblock /dev/sdb1
mdadm –zero-superblock /dev/sdb2
mdadm –zero-superblock /dev/sdb3
3. Ajoutez le disque sdb au RAID 1 :
mdadm –add /dev/md0 /dev/sdb1
mdadm –add /dev/md1 /dev/sdb2
mdadm –add /dev/md2 /dev/sdb3
4. Attendez que le nouveau disque soit duplique :
watch cat /proc/mdstat
Una vez terminado el proceso presione Ctrl + C
5. Réinstaller grub sur les deux disques :
grub
root (hd0,1)
setup (hd0)
root (hd1,1)
setup (hd1)
quit
Notes pour l’installation du Kernel OpenVZ.
1. Après l’installation du noyau OpenVZ, la liste de démarrage devrait ressembler à :
nano /boot/grub/menu.lst
## ## End Default Options ##
title Debian GNU/Linux, kernel 2.6.18-20-ovz-amd64 (RAID1 HD0)
root (hd0,1)
kernel /boot/vmlinuz-2.6.18-20-ovz-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.18-20-ovz-amd64
title Debian GNU/Linux, kernel 2.6.18-20-ovz-amd64 (RAID1 HD1)
root (hd1,1)
kernel /boot/vmlinuz-2.6.18-20-ovz-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.18-20-ovz-amd64
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (RAID1 HD0)
root (hd0,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro quiet
initrd
/boot/initrd.img-2.6.26-2-amd64
title Debian GNU/Linux, kernel 2.6.26-2-amd64 (RAID1 HD1)
root (hd1,1)
kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro quiet
initrd /boot/initrd.img-2.6.26-2-amd64
#title Debian GNU/Linux, kernel 2.6.26-2-amd64 (single-user mode)
#root (hd0,1)
#kernel /boot/vmlinuz-2.6.26-2-amd64 root=/dev/md1 ro single
#initrd /boot/initrd.img-2.6.26-2-amd64
#title Debian GNU/Linux, kernel 2.6.18-20-ovz-amd64 (single-user mode)
#root (hd0,1)
#kernel /boot/vmlinuz-2.6.18-20-ovz-amd64 root=/dev/md1 ro single
#initrd /boot/initrd.img-2.6.18-20-ovz-amd64
### END DEBIAN AUTOMAGIC KERNELS LIST
2. Mettre à jour le ramdisk:
update-initramfs -u