Création d'unepartition raid


Cette page a été rédigée en tenant compte uniquement de mon expérience personnelle. Mon but était d'installer 2 disques durs vierges en raid1 (mirroring) sous linux debian sarge pour ma partition /home. Pour les autres types de raid, la manipulation étant (je suppose) identique.
Pour cela, j'ai utilisé 3 sites:

Configuration du noyau et installation

Dans le cas où vous possédez un noyau compilé, il vous faut le recompiler en rajoutant l'option correspondante.

opton raid noyau

Dans le cas où vous possédez un noyau image, il suffit de charger le module.

modprobe raid1

Il ne reste plus qu'à installer mdadm. Vous pouvez oublier tout ce qui parle de raidtools et raidtools2, ces paquets étant désormais obsolètes. mdadm fournit, plus ou moins, les mêmes fonctionnalités que les paquets raidtools afin de créer et gérer des partitions mais permet l'exécution de ces fonctionnalités sans fichier de configuration (ou presque).

apt-get install mdadm

Création d'une partition raid1

Dans mon cas, je partais de disques durs vierges. Dans le cas ou cela n'est pas possible, il va falloir faire des tests, je n'ai pas testé ma solution...

Créer les partitions allant être mis en raid1, avec cfdisk. Il faudra donner le type FD Linux raid autodetec à vos partitions.
Formatter. Si vous avez un disque contenant déjà des données, vous éviterez cette étape ! Dans mon cas, ces partitions sont /dev/hdb1 et /dev/hdb2:

mke2fs -j /dev/hdb1
mke2fs -j /dev/hdd1

Créer le device /dev/md0 (même chose si vous voulez /dev/md*). Soit il suffit d'utiliser MAKEDEV -v md, ce qui n'est pas mon cas, soit il faut créer le device en utilisant mknod:

mknod /dev/md0 b 9 0

Créer la matrice raid1:

mdadm --create --verbose /dev/md0 --level=raid1 --raid-devices=2 /dev/hdb1 /dev/hdd1

Il suffit de répondre y à la question puis la création se fait. Vous pouvez suivre l'avancement avec:

mdadm --detail /dev/md0

Dans le cas où vous avez un disque contenant des données, mettez le en premier dans la ligne de commande (ici /dev/hdb1). Bien entendu, dans notre cas, il ne peut y avoir qu'un seul disque qui contient des données ou on risque de se retrouver avec plus de données que de place disponible !!!

Formatter la partition /dev/md0. Il parait qu'il est possible de faire cela lors de la construction de la matrice. J'ai tout de même attendu la fin. Le problème est que ce formattage efface les données qui pouvait être sur vos disques. À faire avant la création de la matrice ???

mke2fs -j /dev/md0

Modifier /etc/fstab afin que la partition /dev/md0 soit montée au démarrage (pour moi en tant que /home):

/dev/md0        /home           ext3    defaults                0       2


Conclusion

La commande mdadm --detail /dev/md0 me donne alors:

/dev/md0:
        Version : 00.90.01
  Creation Time : Sat Oct  8 19:44:28 2005
     Raid Level : raid1
     Array Size : 160079552 (152.66 GiB 163.92 GB)
    Device Size : 160079552 (152.66 GiB 163.92 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Mon Oct 10 15:56:27 2005
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 9aac0703:d62c4076:9e4a17f8:3abd7435
         Events : 0.27900

    Number   Major   Minor   RaidDevice State
       0       3       65        0      active sync   /dev/.static/dev/hdb1
       1      22       65        1      active sync   /dev/.static/dev/hdd1


J'espère que cela vous aura aidé. Si vous remarquez des erreurs, n'hésitez pas à me le dire ici.

Last Update: Valid HTML 4.01 Transitional