LVM (Logical Volume Management) permet une gestion flexible des espaces de stockage sous Linux. Il offre :
PV (Physical Volumes)
VG (Volume Groups)
LV (Logical Volumes)
pvcreate [OPTIONS] DEVICE
--metadatasize SIZE # Taille des métadonnées
--dataalignment SIZE # Alignement des données
# Création PV
pvcreate /dev/sdb
# Afficher PV
pvdisplay
pvs
# Scanner nouveaux PV
pvscan
# Supprimer PV
pvremove /dev/sdb
vgcreate [OPTIONS] VG_NAME PV_PATH
-s, --physicalextentsize SIZE # Taille des extents
# Création VG
vgcreate data_vg /dev/sdb
# Étendre VG
vgextend data_vg /dev/sdc
# Réduire VG
vgreduce data_vg /dev/sdc
# Afficher VG
vgdisplay
vgs
# Supprimer VG
vgremove data_vg
lvcreate [OPTIONS] VG_NAME
-L, --size SIZE # Taille du volume
-n, --name NAME # Nom du volume
-s, --snapshot # Créer snapshot
# Création LV
lvcreate -L 100G -n data_lv data_vg
# Étendre LV
lvextend -L +50G /dev/data_vg/data_lv
# Ne pas oublier de redimensionner le système de fichiers
resize2fs /dev/data_vg/data_lv
# Réduire LV (attention aux données!)
# D'abord réduire le système de fichiers
resize2fs /dev/data_vg/data_lv 80G
lvreduce -L 80G /dev/data_vg/data_lv
# Afficher LV
lvdisplay
lvs
# Snapshot simple
lvcreate -s -L 1G -n snap_name /dev/vg_name/lv_name
# Snapshot avec taille spécifique
lvcreate -s -L 10G -n backup_snap /dev/data_vg/data_lv
# Fusionner snapshot avec origine
lvconvert --merge /dev/data_vg/backup_snap
# Création structure LVM complète
pvcreate /dev/sdb
vgcreate data_vg /dev/sdb
lvcreate -L 100G -n data_lv data_vg
# Formatage
mkfs.ext4 /dev/data_vg/data_lv
# Montage
mount /dev/data_vg/data_lv /mnt/data
# Ajouter disque et étendre
pvcreate /dev/sdc
vgextend data_vg /dev/sdc
lvextend -L +100G /dev/data_vg/data_lv
resize2fs /dev/data_vg/data_lv
# Créer snapshot
lvcreate -s -L 10G -n backup_snap /dev/data_vg/data_lv
# Monter snapshot
mkdir /mnt/backup
mount -o ro /dev/data_vg/backup_snap /mnt/backup
# Faire la sauvegarde
rsync -av /mnt/backup/ /path/to/backup/
# Nettoyer
umount /mnt/backup
lvremove /dev/data_vg/backup_snap
# Créer VG avec extent size spécifique
vgcreate -s 16M data_vg /dev/sdb
# Créer LV avec striping
lvcreate -L 100G -n striped_lv -i 2 data_vg
# Vérifier état PV
pvck /dev/sdb
# Scanner et activer
vgscan
vgchange -ay
# Vérifier usage
vgdisplay -v
# Restaurer métadonnées
vgcfgrestore data_vg
# Réparer PV
pvck --repair /dev/sdb
Planification
Sécurité
Performance