LVM Guide · 6 min read · Oct 09, 2025

Un guide pour débutants sur LVM - Page 8

8 Remplacement des disques durs par des plus grands

Nous utilisons actuellement quatre disques durs de 25 Go chacun (du moins, nous agissons comme si c’était le cas). Supposons maintenant que cela ne soit plus suffisant, et que nous avons besoin de plus d’espace dans notre configuration RAID. Par conséquent, nous allons remplacer nos disques durs de 25 Go par des disques durs de 80 Go (en fait, nous allons toujours utiliser les disques durs actuels, mais utiliser leur pleine capacité maintenant - dans la vraie vie, vous remplaceriez vos anciens disques durs de petite taille par de nouveaux, plus grands).

La procédure est la suivante : d’abord, nous retirons /dev/sdb et /dev/sdd des tableaux RAID, les remplaçons par des disques durs plus grands, les remettons dans les tableaux RAID, puis nous faisons de même avec /dev/sdc et /dev/sde.

D’abord, nous marquons /dev/sdb1 comme défaillant :

mdadm --manage /dev/md0 --fail /dev/sdb1
server1:~# mdadm --manage /dev/md0 --fail /dev/sdb1  
 mdadm: set /dev/sdb1 faulty in /dev/md0

La sortie de

cat /proc/mdstat

ressemble maintenant à ceci :

server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdc1[0] sdb1[2](F)  
       24418688 blocks [2/1] [U_]  
 
 md1 : active raid1 sde1[0] sdd1[1]  
       24418688 blocks [2/2] [UU]  
 
 unused devices: 

Ensuite, nous retirons /dev/sdb1 du tableau RAID /dev/md0 :

mdadm --manage /dev/md0 --remove /dev/sdb1
server1:~# mdadm --manage /dev/md0 --remove /dev/sdb1  
 mdadm: hot removed /dev/sdb1
cat /proc/mdstat
server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdc1[0]  
       24418688 blocks [2/1] [U_]  
 
 md1 : active raid1 sde1[0] sdd1[1]  
       24418688 blocks [2/2] [UU]  
 
 unused devices: 

Maintenant, nous faisons de même avec /dev/sdd1 :

mdadm --manage /dev/md1 --fail /dev/sdd1
server1:~# mdadm --manage /dev/md1 --fail /dev/sdd1  
 mdadm: set /dev/sdd1 faulty in /dev/md1
cat /proc/mdstat
server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdc1[0]  
       24418688 blocks [2/1] [U_]  
 
 md1 : active raid1 sde1[0] sdd1[2](F)  
       24418688 blocks [2/1] [U_]  
 
 unused devices: 
mdadm --manage /dev/md1 --remove /dev/sdd1
server1:~# mdadm --manage /dev/md1 --remove /dev/sdd1  
 mdadm: hot removed /dev/sdd1
cat /proc/mdstat
server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdc1[0]  
       24418688 blocks [2/1] [U_]  
 
 md1 : active raid1 sde1[0]  
       24418688 blocks [2/1] [U_]  
 
 unused devices: 

Sur un système réel, vous éteindriez maintenant celui-ci, retireriez les 25 Go /dev/sdb et /dev/sdd et les remplaceriez par des disques de 80 Go. Comme je l’ai dit précédemment, nous n’avons pas besoin de faire cela car tous les disques durs ont déjà une capacité de 80 Go.

Ensuite, nous devons formater /dev/sdb et /dev/sdd. Nous devons créer une partition /dev/sdb1 resp. /dev/sdd1, type fd (Linux RAID autodetect), taille 25 Go (les mêmes paramètres que sur les anciens disques durs), et une partition /dev/sdb2 resp. /dev/sdd2, type fd, qui couvre le reste des disques durs. Comme /dev/sdb1 et /dev/sdd1 sont toujours présents sur nos disques durs, nous devons seulement créer /dev/sdb2 et /dev/sdd2 dans cet exemple particulier.

fdisk /dev/sdb

server1:~# fdisk /dev/sdb
Le nombre de cylindres pour ce disque est réglé à 10443.
Il n’y a rien de mal à cela, mais c’est plus grand que 1024,
et pourrait dans certaines configurations causer des problèmes avec :

  1. des logiciels qui s’exécutent au démarrage (par exemple, anciennes versions de LILO)
  2. le démarrage et les logiciels de partitionnement d’autres systèmes d’exploitation
    (par exemple, DOS FDISK, OS/2 FDISK)

Commande (m pour l’aide) : <– p

Disque /dev/sdb : 85.8 Go, 85899345920 octets
255 têtes, 63 secteurs/track, 10443 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets

Périphérique Démarrer Fin Blocs Id Système
/dev/sdb1 1 3040 24418768+ fd Linux raid autodetect

Commande (m pour l’aide) : <– n
Action de commande
e étendue
p partition primaire (1-4)
<– p
Numéro de partition (1-4) : <– 2
Premier cylindre (3041-10443, valeur par défaut 3041) : <–
Utilisation de la valeur par défaut 3041
Dernier cylindre ou +taille ou +tailleM ou +tailleK (3041-10443, valeur par défaut 10443) : <–
Utilisation de la valeur par défaut 10443

Commande (m pour l’aide) : <– t
Numéro de partition (1-4) : <– 2
Code hexadécimal (tapez L pour lister les codes) : <– fd
Type de système de partition 2 changé en fd (Linux raid autodetect)

Commande (m pour l’aide) : <– w
La table de partition a été modifiée !

Appel de ioctl() pour relire la table de partition.
Synchronisation des disques.

Faites de même pour /dev/sdd :

fdisk /dev/sdd

La sortie de

fdisk -l

ressemble maintenant à ceci :

server1:~# fdisk -l  
  
 Disque /dev/sda : 21.4 Go, 21474836480 octets  
 255 têtes, 63 secteurs/track, 2610 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sda1   *           1          18      144553+  83  Linux  
 /dev/sda2              19        2450    19535040   83  Linux  
 /dev/sda4            2451        2610     1285200   82  Linux swap / Solaris  
  
 Disque /dev/sdb : 85.8 Go, 85899345920 octets  
 255 têtes, 63 secteurs/track, 10443 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sdb1               1        3040    24418768+  fd  Linux raid autodetect  
 /dev/sdb2            3041       10443    59464597+  fd  Linux raid autodetect  
  
 Disque /dev/sdc : 85.8 Go, 85899345920 octets  
 255 têtes, 63 secteurs/track, 10443 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sdc1               1        3040    24418768+  fd  Linux raid autodetect  
  
 Disque /dev/sdd : 85.8 Go, 85899345920 octets  
 255 têtes, 63 secteurs/track, 10443 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sdd1               1        3040    24418768+  fd  Linux raid autodetect  
 /dev/sdd2            3041       10443    59464597+  fd  Linux raid autodetect  
  
 Disque /dev/sde : 85.8 Go, 85899345920 octets  
 255 têtes, 63 secteurs/track, 10443 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sde1               1        3040    24418768+  fd  Linux raid autodetect  
  
 Disque /dev/sdf : 85.8 Go, 85899345920 octets  
 255 têtes, 63 secteurs/track, 10443 cylindres  
 Unités = cylindres de 16065 * 512 = 8225280 octets  
  
    Périphérique  Démarrer      Fin      Blocs   Id  Système  
 /dev/sdf1               1        3040    24418768+  8e  Linux LVM  
  
 Disque /dev/md1 : 25.0 Go, 25004736512 octets  
 2 têtes, 4 secteurs/track, 6104672 cylindres  
 Unités = cylindres de 8 * 512 = 4096 octets  
  
 Disque /dev/md1 ne contient pas de table de partition valide  
  
 Disque /dev/md0 : 25.0 Go, 25004736512 octets  
 2 têtes, 4 secteurs/track, 6104672 cylindres  
 Unités = cylindres de 8 * 512 = 4096 octets  
  
 Disque /dev/md0 ne contient pas de table de partition valide

Maintenant, nous ajoutons /dev/sdb1 à /dev/md0 à nouveau et /dev/sdd1 à /dev/md1 :

mdadm --manage /dev/md0 --add /dev/sdb1
server1:~# mdadm --manage /dev/md0 --add /dev/sdb1  
 mdadm: re-added /dev/sdb1
mdadm --manage /dev/md1 --add /dev/sdd1
server1:~# mdadm --manage /dev/md1 --add /dev/sdd1  
 mdadm: re-added /dev/sdd1

Maintenant, le contenu des deux tableaux RAID sera synchronisé. Nous devons attendre que cela soit terminé avant de pouvoir continuer. Nous pouvons vérifier l’état de la synchronisation avec

cat /proc/mdstat

La sortie ressemble à ceci pendant la synchronisation :

server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdb1[1] sdc1[0]  
       24418688 blocks [2/1] [U_]  
       [=>...................]  recovery =  9.9% (2423168/24418688) finish=2.8min speed=127535K/sec  
 
 md1 : active raid1 sdd1[1] sde1[0]  
       24418688 blocks [2/1] [U_]  
       [=>...................]  recovery =  6.4% (1572096/24418688) finish=1.9min speed=196512K/sec  
 
 unused devices: 

et comme ceci quand c’est terminé :

server1:~# cat /proc/mdstat  
 Personnalités : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md0 : active raid1 sdb1[1] sdc1[0]  
       24418688 blocks [2/2] [UU]  
 
 md1 : active raid1 sdd1[1] sde1[0]  
       24418688 blocks [2/2] [UU]  
 
 unused devices: 
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.