RAID 1 avec deux disques sous Debian 13
Le RAID 1 ou mirroring fait partie des solutions qui augmentent considérablement la sécurité des données. Avec une telle configuration, tous les fichiers sont automatiquement dupliqués sur plusieurs disques durs. Cette opération se fait de manière complètement transparente sous le capot. Si jamais l'un des disques lâche, le système reste fonctionnel avec le disque restant.
Dans cet article, j'ai décidé de vous montrer la configuration la plus simple : le RAID 1 avec deux disques. Concrètement, je vais essayer de transformer le schéma de partitionnement proposé par défaut par l'installateur de Debian par l'équivalent en RAID 1.
Dans mon bureau, je dispose d'un serveur bac à sable muni de deux disques SATA d'une taille de 250 Go chacun. C'est cette machine qui va me servir de base matérielle pour ce petit atelier pratique.
Deux cas de figure
La mise en place d'un assemblage RAID ne s'effectue pas de la même façon sur une machine dotée d'un BIOS traditionnel et une machine plus moderne avec un UEFI. Pour cette raison, je distingue les deux cas de figure.
Réinitialiser les disques
Avant de lancer une installation, c'est toujours une bonne idée de faire un brin de ménage sur la machine.
-
Je lance le système de secours GRML.
L'installation d'un système minimal Debian est détaillée ici. Dans cet article, je m'intéresse uniquement à tout ce qui est spécifique au RAID en faisant abstraction de tout le reste.
RAID 1 avec un BIOS traditionnel
Le cas de figure le plus simple, c'est une machine équipée d'un BIOS traditionnel. Voici notre schéma de partitionnement :
-
une matrice RAID pour la partition principale formatée en
ext4 -
une matrice RAID pour la partition d'échange (
swap)
Un peu de vocabulaire
Un raid array se traduit en français par matrice RAID. Alternativement, vous pourrez trouver les termes assemblage RAID, grappe RAID ou périphérique RAID.
Créer les partitions RAID
Une fois que j'ai créé l'utilisateur initial dans le programme d'installation, j'arrive dans la partie dédiée au partitionnement et à l'organisation des disques.
- Méthode de partitionnement :
Manuel
Je dispose de deux disques durs vierges sda et sdb :
-
Je sélectionne le disque
sda. -
Créer une nouvelle table de partitions ?
Oui -
Je sélectionne la partie
Espace librede mon disquesda. -
Créer une nouvelle partition -
Taille de la partition :
242 GB1 -
Type :
Primaire -
Emplacement :
Début -
Utiliser comme :
volume physique pour RAID -
Fin du paramétrage de cette partition -
Je sélectionne la partie
Espace librede mon disquesda. -
Créer une nouvelle partition -
Taille de la partition :
8 GB2 -
Type :
Primaire -
Utiliser comme :
volume physique pour RAID -
Fin du paramétrage de cette partition -
Je sélectionne le disque
sdb. -
Je le partitionne exactement comme le disque
sdaen suivant la procédure ci-dessus.
Voici ce que j'obtiens :
Créer les matrices RAID
Les partitions de type RAID sont créées. La prochaine étape consiste à assembler ces partitions en matrices RAID.
-
Configurer le RAID avec gestion logicielle -
Appliquer les changements aux disques ?
Oui -
Créer un périphérique multidisque -
Type :
RAID1 -
Nombre de périphériques actifs :
2 -
Nombre de périphériques de réserve :
0 -
Périphériques actifs :
/dev/sda1et/dev/sdb1 -
Créer un périphérique multidisque -
Type :
RAID1 -
Nombre de périphériques actifs :
2 -
Nombre de périphériques de réserve :
0 -
Périphériques actifs :
/dev/sda2et/dev/sdb2 -
Terminer
À ce stade je dispose de deux périphériques RAID dans l'installateur :
Formater les matrices RAID
-
Je sélectionne l'espace libre du
périphérique RAID n° 0. -
Utiliser comme :
système de fichiers journalisé ext4 -
Point de montage :
/ - système de fichiers racine -
Fin du paramétrage de cette partition -
Je sélectionne l'espace libre du
périphérique RAID n° 1. -
Utiliser comme :
espace d'échange (swap) -
Fin du paramétrage de cette partition
Voici ce que j'obtiens au final :
Il ne me reste plus qu'à Terminer le partitionnement et appliquer les
changements.
À partir de là, l'installation du système de base s'effectue exactement comme sur un seul disque dur.
RAID 1 sur un système UEFI
Les choses ne se passent pas de la même manière sur un système plus moderne doté d'un UEFI. Le point de départ sera le même que sur un système avec un BIOS traditionnel, à savoir deux disques vierges :
La principale différence avec le BIOS, c'est qu'ici on ajoute une partition
de type EFI au début de chaque disque.
Créer les partitions RAID
-
Je sélectionne le disque
sda. -
Créer une nouvelle table de partitions ?
Oui -
Je sélectionne la partie
Espace librede mon disquesda. -
Créer une nouvelle partition -
Taille de la partition :
1 GB3 -
Type :
Primaire -
Emplacement :
Début -
Utiliser comme :
Partition système EFI -
Fin du paramétrage de cette partition -
Je sélectionne la partie
Espace librede mon disquesda. -
Créer une nouvelle partition -
Taille de la partition :
241 GB1 -
Type :
Primaire -
Emplacement :
Début -
Utiliser comme :
volume physique pour RAID -
Fin du paramétrage de cette partition -
Je sélectionne la partie
Espace librede mon disquesda. -
Créer une nouvelle partition -
Taille de la partition :
8 GB2 -
Type :
Primaire -
Utiliser comme :
volume physique pour RAID -
Fin du paramétrage de cette partition -
Je sélectionne le disque
sdb. -
Je le partitionne exactement comme le disque
sdaen suivant la procédure ci-dessus.
Voici ce que j'obtiens :
Créer les matrices RAID
Les partitions de type RAID sont créées. La prochaine étape consiste à assembler ces partitions en matrices RAID.
-
Configurer le RAID avec gestion logicielle. -
Appliquer les changements aux disques ?
Oui -
Créer un périphérique multidisque -
Type :
RAID1 -
Nombre de périphériques actifs :
2 -
Nombre de périphériques de réserve :
0 -
Périphériques actifs :
/dev/sda2et/dev/sdb2 -
Créer un périphérique multidisque -
Type :
RAID1 -
Nombre de périphériques actifs :
2 -
Nombre de périphériques de réserve :
0 -
Périphériques actifs :
/dev/sda3et/dev/sdb3 -
Terminer
Formater les matrices RAID
-
Je sélectionne l'espace libre du
périphérique RAID n° 0. -
Utiliser comme :
système de fichiers journalisé ext4 -
Point de montage :
/ - système de fichiers racine -
Fin du paramétrage de cette partition -
Je sélectionne l'espace libre du
périphérique RAID n° 1. -
Utiliser comme :
espace d'échange (swap) -
Fin du paramétrage de cette partition -
Terminer le partitionnement et appliquer les changements
Installer GRUB
L'installateur me demande de sélectionner le disque sur lequel le chargeur de
démarrage GRUB sera installé. Pour l'instant, je choisis /dev/sda :
Une fois que j'ai effectué le redémarrage initial du système, je devrai rectifier le tir et installer GRUB sur les deux disques :
# grub-install /dev/sda
Installing for i386-pc platform.
Installation finished. No error reported.
# grub-install /dev/sdb
Installing for i386-pc platform.
Installation finished. No error reported.
# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.12.90+deb13.1-amd64
Found initrd image: /boot/initrd.img-6.12.90+deb13.1-amd64
...
Adding boot menu entry for UEFI Firmware Settings ...
done
Sur un système UEFI ça se présente comme ceci :
# grub-install /dev/sda
Installing for x86_64-efi platform.
Installation finished. No error reported.
root@testbox-server:~# grub-install /dev/sdb
Installing for x86_64-efi platform.
Installation finished. No error reported.
# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.12.90+deb13.1-amd64
Found initrd image: /boot/initrd.img-6.12.90+deb13.1-amd64
...
Adding boot menu entry for UEFI Firmware Settings ...
done
Afficher la synchronisation
Sur une installation fraîche, les deux disques ne sont pas encore synchronisés. Pour en savoir un peu plus, utilisez la commande suivante :
$ cat /proc/mdstat
Personalities : [raid1] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sda1[0] sdb1[1]
236194816 blocks super 1.2 [2/2] [UU]
[>....................] resync = 4.2% (10109632/236194816)
finish=18.6min speed=201962K/sec
md1 : active (auto-read-only) raid1 sdb2[1] sda2[0]
7984128 blocks super 1.2 [2/2] [UU]
resync=PENDING
unused devices: <none>
Suivre la synchronisation en temps réel
Utilisez la commande watch cat /proc/mdstat pour suivre en temps réel la
synchronisation des disques.
-
Pour calculer la taille de cette partition, je soustrais la taille prévue de la partition
swap(en l'occurrence 8 Go) à l'espace disponible. ↩↩ -
Je prends simplement l'espace restant affiché par l'installateur. ↩↩
-
On pourra objecter que 1 Go ça fait un peu beaucoup pour une partition système EFI. Je me suis conformé ici au schéma de partitionnement par défaut proposé par Debian sur un système UEFI muni d'un seul disque. ↩
La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.







