Linux:LVM
Un article de Djjnet.
LVM pour Logical Volume Manager permet d'avoir une partition dont il est possible de changer facilement la taille sans reformater celle-ci. Par exemple, il est possible de rajouter un disque et augmenter la taille du volume logique.
Il y a 3 éléments à connaître :
- PV : Le Physical Volume représentant une des partitions utilisées
- VG : Le Volume Group représentant un ensemble de PV
- LV : Le Logical Volume représentant un espace dans le VG qui sera utilisé comme les "anciennes partitions" pour y placer nos données
Exemple :
|---------------| |---------------|
| PV1 | | PV2 |
|---------------| |---------------|
|__________________________________|
|
|----------------------------------|
| VG1 |
|----------------------------------|
| |
|-------------||-------------------|
| LV1 || LV2 |
|-------------||-------------------|
ou autre exemple :
|---------------| |---------------| |---------------------------|
| PV1 | | PV2 | | PV3 |
|---------------| |---------------| |---------------------------|
|_________________________________________________________________|
|
|-----------------------------------------------------------------|
| VG1 |
|-----------------------------------------------------------------|
|
|-----------------------------------------------------------------|
| LV1 |
|-----------------------------------------------------------------|
Création
Regardons les partitions disponibles :
lvmdiskscan
/dev/ram0 [ 8,00 MiB] /dev/ram1 [ 8,00 MiB] /dev/sda1 [ 4,66 GiB] /dev/ram2 [ 8,00 MiB] /dev/sda2 [ 26,45 GiB] /dev/sda3 [ 37,25 GiB] ... /dev/sdb1 [ 139,28 GiB] /dev/sdc1 [ 698,64 GiB] 0 disks 22 partitions 0 LVM physical volume whole disks 0 LVM physical volume
Nous allons utiliser /dev/sdc1.
Il faut d'abord initialiser le PV :
pvcreate /dev/sdc1
Avec pvscan vous verrez le PV ainsi initialisé.
Créons un VG de nom vg_backup avec le PV /dev/sdc1 :
vgcreate vg_backup /dev/sdc1
vgdisplay vg_backup permet de voir le résultat et les informations sur le VG.
Enfin créons le LV de taille utilisant tout le VG (taille dispo trouvée avec vgdisplay) et de nom lv_backup :
lvcreate -L698,63G -n lv_backup vg_backup
Nous avons ainsi dans /dev le nouveau device lv_backup dans le dossier du VG qui est en fait un lien symbolique pour LVM2 :
ls -l /dev/vg_backup/lv_backup lrwxrwxrwx 1 root root 29 nov. 22 10:48 /dev/vg_backup/lv_backup -> ../mapper/vg_backup-lv_backup
De même lvdisplay lv_backup donne des informations sur le volume logique.
On peut maintenant formater l'espace disponible :
mkfs.ext3 -L backup /dev/vg_backup/lv_backup
Et le monter :
mkdir /home/backup mount /dev/vg_backup/lv_backup /home backup
Extension
Après ajout au VG d'un PV avec vgextend, il faut augmenter le LV :
- d'abord démonter le volume :
umount /home/backup
- augmenter le LV :
lvextend -L+50G /dev/vg_backup/lv_backup
- étendre le système de fichier ext3 :
resize2fs /dev/vg_backup/lv_backup
- remonter le volume :
mount /dev/vg_backup/lv_backup /home/backup


