Linux
Stockage
Administration Système

LVM : Maîtriser la gestion des volumes logiques sur Linux

12 février 2026

7 min de lecture

Vous partitionnez déjà vos disques. Vous gérez du RAID. Vous pensez que vous maîtrisez le stockage. Et puis un jour, vous devez agrandir un volume sans toucher à la production, faire un snapshot avant une mise à jour critique, ou répartir du stockage entre plusieurs services sans repartitionner. C'est LVM. Et une fois que vous le comprenez, vous ne retournez jamais à des partitions classiques.

Prérequis

  • Linux : Debian, Ubuntu, RHEL, Rocky, CentOS
  • Un ou plusieurs disques disponibles (physiques ou virtuels)
  • Accès root
  • Commandes de base : fdisk, mount, df
  • Paquet lvm2 installé (apt install lvm2 ou yum install lvm2)

La conceptualisation : PV → VG → LV

LVM introduit trois couches d'abstraction entre vos disques physiques et vos points de montage. Comprendre ces trois concepts, c'est comprendre LVM.

Physical Volume (PV) : un disque ou une partition préparée pour LVM. C'est votre matériel brut.

Volume Group (VG) : un pool de PV regroupés ensemble. C'est votre espace total disponible.

Logical Volume (LV) : une partition virtuelle taillée dans le VG. C'est ce que vous montez et utilisez comme un disque normal.

Disque physique ──► PV ──► VG (pool) ──► LV ──► Point de montage
/dev/sda1              pool_data       data     /mnt/data
/dev/sdb1              pool_data       logs     /var/log

La puissance de LVM, c'est que les LV peuvent être redimensionnés, snapshottés, migrés — sans toucher aux PV en dessous.

Installation et initialisation

1. Vérifier que LVM est installé
which lvcreate
lvm version
2. Préparer un disque comme Physical Volume
# Vérifier que le disque est disponible
lsblk

# Créer le PV sur le disque entier (pas de partition nécessaire)
sudo pvcreate /dev/sdb

# Vérifier
sudo pvs
  PV       VG   Fmt  Attr PSize   PFree
  /dev/sdb      lvm2 ---  <100.00g <100.00g
3. Créer un Volume Group
sudo vgcreate production /dev/sdb

# Vérifier
sudo vgs
  VG         #PV #LV #SN Attr   VSize   VFree
  production   1   0   0 -w-   <100.00g <100.00g
4. Créer un Logical Volume
# Créer un LV de 50 Go
sudo lvcreate -L 50G -n appdata production

# Vérifier
sudo lvs
  LV      VG         Attr       LSize   Pool Origin Data%  Meta%  Move Log Copy%  Convert
  appdata production -wi-a-----  50.00g
5. Formater et monter
# Formater en ext4
sudo mkfs.ext4 /dev/production/appdata

# Créer le point de montage
sudo mkdir -p /mnt/appdata

# Monter
sudo mount /dev/production/appdata /mnt/appdata

# Rendre permanent dans fstab
echo "/dev/production/appdata /mnt/appdata ext4 defaults 0 2" | sudo tee -a /etc/fstab

Redimensionnement live : l'avantage numéro un

C'est ça, la vraie différence avec des partitions classiques. Vous agrandissez un volume sans unmount, sans repartitionner, sans redémarrer.

Agrandir un LV
# Agrandir le LV de 20 Go supplémentaires
sudo lvextend -L +20G /dev/production/appdata

# Étendre le système de fichiers pour utiliser l'espace supplémentaire
sudo resize2fs /dev/production/appdata

# Vérifier
sudo df -h /mnt/appdata
Réduire un LV (avec précaution)

La réduction est possible mais risquée. Toujours faire un snapshot avant.

# 1. Unmount OBLIGATOIRE pour une réduction
sudo umount /mnt/appdata

# 2. Vérifier le système de fichiers
sudo e2fsck -f /dev/production/appdata

# 3. Réduire le système de fichiers en premier
sudo resize2fs /dev/production/appdata 30G

# 4. Puis réduire le LV
sudo lvreduce -L 30G /dev/production/appdata

# 5. Remounter
sudo mount /dev/production/appdata /mnt/appdata

Snapshots : sauvegarder avant d'agir

Un snapshot LVM, c'est une copie-sur-écriture instantanée. Aucune copie de données au moment de la création. La copie ne se fait qu'au moment où les données originales changent.

Créer un snapshot
# Snapshot de appdata avec 5 Go d'espace pour les changements
sudo lvcreate --snapshot -L 5G -n appdata_backup /dev/production/appdata

# Vérifier
sudo lvs
  LV              VG         Attr       LSize   Pool Origin  Data%  Meta%  Move Log Copy%  Convert
  appdata         production -wi-a-----  50.00g
  appdata_backup  production vwi-a-s---   5.00g        appdata  2.34
Monter un snapshot (lecture seule par défaut)
sudo mkdir -p /mnt/appdata_backup
sudo mount -o ro /dev/production/appdata_backup /mnt/appdata_backup
Restaurer depuis un snapshot
# Unmount le volume original
sudo umount /mnt/appdata

# Merger le snapshot sur l'original (irréversible)
sudo lvconvert --merge /dev/production/appdata_backup

# Remounter
sudo mount /dev/production/appdata /mnt/appdata

Thin Provisioning : allouer plus que vous n'avez

Le thin provisioning permet de créer des LV dont la taille annoncée dépasse l'espace physique réellement disponible. L'espace est alloué au fil de l'utilisation réelle, pas au moment de la création.

Créer un thin pool
# Créer un thin pool de 80 Go dans le VG
sudo lvcreate --type thin-pool -L 80G -n thin_pool production

# Créer un thin volume de 200 Go (oui, plus que le pool)
sudo lvcreate --type thin -n webapp --thinpool thin_pool -V 200G production

# Vérifier l'utilisation réelle
sudo lvs --options LV,VG,DATA%,METADATA%,POOL_FREE
  LV         VG         Data%  Meta%  Pool_free
  thin_pool  production  12.50  5.20   70.00g
  webapp     production

Attention : surveiller le DATA% du pool en continu. Si le pool se remplit, les volumes thin deviennent inaccessibles. Ajoutez une alerte sur ce métrique.

Surveillance du thin pool
# Alerte si le thin pool dépasse 80%
DATA_PERCENT=$(sudo lvs --noheadings -o data_percent --nosuffix thin_pool | tr -d ' ')
if (( $(echo "$DATA_PERCENT > 80" | bc -l) )); then
    echo "ALERTE : thin pool à ${DATA_PERCENT}%"
fi

Ajouter un disque à un VG existant

Votre VG est plein ? Ajoutez un disque sans toucher aux LV existants.

# Préparer le nouveau disque comme PV
sudo pvcreate /dev/sdc

# Ajouter au VG existant
sudo vgextend production /dev/sdc

# Vérifier l'espace libre
sudo vgs production
  VG         #PV #LV #SN Attr   VSize    VFree
  production   2   1   0 -w-   <199.00g  <149.00g

Les LV existants continuent de fonctionner exactement comme avant. Vous pouvez maintenant les agrandir sur le nouvel espace.

Migration de données entre disques

Vous devez remplacer un disque ? LVM fait ça sans interruption de service.

# Ajouter le nouveau disque
sudo pvcreate /dev/sdd
sudo vgextend production /dev/sdd

# Migrer les données de /dev/sdb vers /dev/sdd
sudo pvmove /dev/sdb /dev/sdd

# Vérifier que le PV est vide
sudo pvs
  PV       VG         Fmt  Attr PSize   PFree
  /dev/sdb production lvm2 -m-  <100.00g <100.00g   ← vide
  /dev/sdd production lvm2 a--  <100.00g       0
# Retirer le l'ancien PV du VG
sudo vgreduce production /dev/sdb

# Supprimer le PV
sudo pvremove /dev/sdb

Commandes de référence rapide

CommandeAction
pvsLister les Physical Volumes
vgsLister les Volume Groups
lvsLister les Logical Volumes
pvcreate /dev/sdXCréer un PV
vgcreate nom /dev/sdXCréer un VG
lvcreate -L taille -n nom vgCréer un LV
lvextend -L +taille /dev/vg/lvAgrandir un LV
resize2fs /dev/vg/lvÉtendre le système de fichiers
lvcreate --snapshotCréer un snapshot
vgextend vg /dev/sdXAjouter un disque au VG
pvmove /dev/sdXMigrer un PV

Pièges classiques

Le premier piège est de confondre la taille du LV avec la taille du système de fichiers. lvextend agrandit le volume logique, mais le système de fichiers doit aussi être étendu avec resize2fs — sinon l'espace supplémentaire est invisible. Le deuxième, c'est le thin provisioning sans surveillance : un thin pool plein rend les volumes inaccessibles, sans warning par défaut. Mettez un monitoring dessus dès le jour un. Et enfin, ne jamais réduire un LV sans snapshot préalable. C'est la règle absolue.

Conclusion

LVM n'est pas un outil sophistiqué. C'est une couche d'abstraction qui vous donne du contrôle sur votre stockage sans toucher au matériel. Agrandir en production, sauvegarder en un instant, migrer un disque sans interruption — tout ça devient trivial.

La prochaine étape logique après LVM ? LUKS pour chiffrer ces volumes. Ou explorez btrfs vs ZFS si vous voulez aller encore plus loin sur les snapshots et la déduplication. Vous pouvez aussi consulter nos guides sur LVM avancé : snapshots, resize et migration et RAID logiciel avec mdadm.

Besoin d'aide sur ce sujet ?

Notre équipe d'experts est là pour vous accompagner dans vos projets d'infrastructure et d'infogérance.

Contactez-nous

Articles similaires