En raison des modifications apportées aux exigences de l’examen LFCS à compter du 2 février 2016, nous ajoutons les sujets nécessaires à la série LFCS publiée ici. Pour vous préparer à cet examen, nous vous recommandons fortement d’utiliser également la série LFCE.

L’une des décisions les plus importantes lors de l’installation d’un système Linux est la quantité d’espace de stockage à allouer aux fichiers système, aux répertoires personnels, etc. Si vous faites une erreur à ce stade, l’augmentation de la taille d’une partition qui n’a plus d’espace disponible peut s’avérer fastidieuse et un peu risquée.
La gestion de volumes logiques (également connue sous le nom de LVM), qui est devenue la norme pour l’installation de la plupart (sinon de toutes) les distributions Linux, présente de nombreux avantages par rapport à la gestion de partitionnement traditionnelle. La caractéristique la plus distinctive de LVM est peut-être le fait qu’il permet de redimensionner (réduire ou augmenter) les divisions logiques à volonté sans grande difficulté.
La structure de LVM se compose de :
- Un ou plusieurs disques durs entiers ou partitions sont configurés en tant que volumes physiques (PV).
- A volume group (VG) is created using one or more physical volumes. You can think of a volume group as a single storage unit.
- Plusieurs volumes logiques peuvent ensuite être créés dans un groupe de volumes. Chaque volume logique est quelque peu équivalent à une partition traditionnelle – avec l’avantage qu’il peut être redimensionné à volonté comme nous l’avons mentionné précédemment.
Dans cet article, nous utiliserons trois disques de 8 Go chacun (/dev/sdb, /dev/sdc et /dev/sdd) pour créer trois volumes physiques. Vous pouvez créer les PV directement sur le périphérique ou le partitionner d’abord.
Bien que nous ayons choisi d’opter pour la première méthode, si vous décidez d’aller avec la seconde (comme expliqué dans Partie 4 – Créer des partitions et des systèmes de fichiers sous Linux de cette série), assurez-vous de configurer chaque partition en tant que type 8e
.
Création de volumes physiques, de groupes de volumes et de volumes logiques
Pour créer des volumes physiques sur /dev/sdb, /dev/sdc et /dev/sdd, faites:
# pvcreate /dev/sdb /dev/sdc /dev/sdd
Vous pouvez lister les PV nouvellement créés avec:
# pvs
et obtenir des informations détaillées sur chaque PV avec:
# pvdisplay /dev/sdX
(où X est b, c ou d)
Si vous omettez /dev/sdX
en tant que paramètre, vous obtiendrez des informations sur tous les PV.
Pour créer un groupe de volumes nommé vg00
en utilisant /dev/sdb
et /dev/sdc
(nous garderons /dev/sdd
pour plus tard pour illustrer la possibilité d’ajouter d’autres périphériques pour étendre la capacité de stockage en cas de besoin):
# vgcreate vg00 /dev/sdb /dev/sdc
Comme ce fut le cas avec les volumes physiques, vous pouvez également consulter des informations sur ce groupe de volumes en émettant:
# vgdisplay vg00
Étant donné que vg00
est formé avec deux disques de 8 Go, il apparaîtra comme un seul disque de 16 Go:

Lorsqu’il s’agit de créer des volumes logiques, la répartition de l’espace doit tenir compte à la fois des besoins actuels et futurs. Il est recommandé de nommer chaque volume logique en fonction de son utilisation prévue.
Par exemple, créons deux VL nommés vol_projects
(10 Go) et vol_backups
(espace restant), que nous pourrons utiliser ultérieurement pour stocker la documentation de projet et les sauvegardes système, respectivement.
L’option -n
est utilisée pour indiquer un nom pour le VL, alors que -L
définit une taille fixe et -l
(L minuscule) est utilisé pour indiquer un pourcentage de l’espace restant dans le VG conteneur.
# lvcreate -n vol_projects -L 10G vg00 # lvcreate -n vol_backups -l 100%FREE vg00
Comme précédemment, vous pouvez afficher la liste des VL et des informations de base avec :
# lvs
et des informations détaillées avec
# lvdisplay
Pour afficher des informations sur un seul VL, utilisez lvdisplay avec les VG et VL en tant que paramètres, comme suit :
# lvdisplay vg00/vol_projects

Sur l’image ci-dessus, nous pouvons voir que les VL ont été créés en tant que périphériques de stockage (voir la ligne Chemin du VL). Avant que chaque volume logique puisse être utilisé, nous devons créer un système de fichiers dessus.
Nous utiliserons ext4 comme exemple ici, car il nous permet à la fois d’augmenter et de réduire la taille de chaque VL (contrairement à xfs qui ne permet que d’augmenter la taille) :
# mkfs.ext4 /dev/vg00/vol_projects # mkfs.ext4 /dev/vg00/vol_backups
Dans la prochaine section, nous expliquerons comment redimensionner les volumes logiques et ajouter de l’espace de stockage physique supplémentaire lorsque cela est nécessaire.
Redimensionnement des volumes logiques et extension des groupes de volumes
Maintenant, imaginez le scénario suivant. Vous commencez à manquer d’espace dans vol_backups
, alors que vous avez beaucoup d’espace disponible dans vol_projects
. En raison de la nature de LVM, nous pouvons facilement réduire la taille de ce dernier (disons 2,5 Go) et l’allouer pour le premier, tout en redimensionnant chaque système de fichiers en même temps.
Heureusement, c’est aussi simple que de faire :
# lvreduce -L -2.5G -r /dev/vg00/vol_projects # lvextend -l +100%FREE -r /dev/vg00/vol_backups

Il est important d’inclure les signes moins (-)
ou plus (+)
lors du redimensionnement d’un volume logique. Sinon, vous définissez une taille fixe pour le LV au lieu de le redimensionner.
Il peut arriver que vous atteigniez un point où le redimensionnement des volumes logiques ne puisse plus répondre à vos besoins de stockage et que vous ayez besoin d’acheter un périphérique de stockage supplémentaire. Pour simplifier, vous aurez besoin d’un autre disque. Nous allons simuler cette situation en ajoutant le PV restant de notre configuration initiale (/dev/sdd
).
Pour ajouter /dev/sdd
à vg00
, faites
# vgextend vg00 /dev/sdd
Si vous exécutez vgdisplay vg00
avant et après la commande précédente, vous verrez l’augmentation de la taille du VG :
# vgdisplay vg00

Maintenant, vous pouvez utiliser l’espace nouvellement ajouté pour redimensionner les LV existants selon vos besoins, ou en créer de nouveaux au besoin.
Montage des volumes logiques au démarrage et sur demande
Bien sûr, il serait inutile de créer des volumes logiques si nous n’allons pas les utiliser ! Pour mieux identifier un volume logique, nous devrons découvrir quel est son UUID
(un attribut non modifiable qui identifie de manière unique un périphérique de stockage formaté).
Utilisez blkid suivi du chemin d’accès de chaque périphérique :
# blkid /dev/vg00/vol_projects # blkid /dev/vg00/vol_backups

Créez des points de montage pour chaque LV :
# mkdir /home/projects # mkdir /home/backups
et insérez les entrées correspondantes dans /etc/fstab
(assurez-vous d’utiliser les UUID obtenus précédemment) :
UUID=b85df913-580f-461c-844f-546d8cde4646 /home/projects ext4 defaults 0 0 UUID=e1929239-5087-44b1-9396-53e09db6eb9e /home/backups ext4 defaults 0 0
Enregistrez ensuite les modifications et montez les LV :
# mount -a # mount | grep home

Lorsqu’il s’agit d’utiliser réellement les LV, vous devrez attribuer les autorisations ugo+rwx
appropriées comme expliqué dans Partie 8 – Gérer les utilisateurs et les groupes sous Linux de cette série.
Résumé
Dans cet article, nous avons présenté la Gestion des Volumes Logiques, un outil polyvalent pour gérer les périphériques de stockage qui offre une extensibilité. Associé à RAID (que nous avons expliqué dans la Partie 6 – Créer et Gérer un RAID sous Linux de cette série), vous pouvez bénéficier non seulement de l’extensibilité (fournie par LVM) mais également de la redondance (offerte par RAID).
Dans ce type de configuration, vous trouverez généralement LVM sur du RAID, c’est-à-dire configurer d’abord le RAID puis configurer le LVM par-dessus.
Si vous avez des questions sur cet article, ou des suggestions pour l’améliorer, n’hésitez pas à nous contacter en utilisant le formulaire de commentaire ci-dessous.
Source:
https://www.tecmint.com/manage-and-create-lvm-parition-using-vgcreate-lvcreate-and-lvextend/