Skip to content

Linux Attitude

Le libre est un état d'esprit

Niveau :
Résumé : pv ; vg ; lv

LVM : Logical Volume Management. C'est un système qui permet de mixer une ou plusieurs partitions pour en faire un ou plusieurs périphériques de blocs. À quoi cela peut-il bien servir ? C'est tout d'abord une question de flexibilité. Imaginez pouvoir agrandir ou réduire une partition facilement, parfois même sans démonter le système de fichier. Imaginez pouvoir agrandir une partition de façon à ce qu'elle tienne sur 2 disques. LVM apporte aussi d'autres fonctionnalités que nous verrons un peu plus tard.

Un dessin valant mieux qu'un long article, voici le principe de fonctionnement de LVM :

Fonctionnement de LVM

Donc à la première ligne vous prenez des partitions que vous transformez en pv (physical volume) :

$ pvcreate /dev/sda2
$ pvcreate /dev/sda4
$ pvcreate /dev/sdb1
# on verifie qu'ils sont reconnus
$ pvdisplay

Ensuite vous les regroupez dans un vg (volume group) :

# note : permettez-vous de choisir un nom plus explicite que vg0
$ vgcreate vg0 /dev/sda2 /dev/sda4 /dev/sdb1
# on vérifie qu'il est reconnu
$ vgdisplay

Et enfin vous redécoupez celui-ci en différents lv (logical volume) :

# note : permettez-vous de choisir un nom plus explicite que lv0
$ lvcreate -L 10G -n lv0 vg0
$ lvcreate -l 100%FREE -n lv1 vg0
# on vérifie qu'ils sont reconnus
$ lvdisplay

Notez au passage qu'il y a de nombreux moyens de spécifier la taille du volume (en taille absolue ou en pourcentage du total ou de l'espace libre).

Voila, on peut maintenant utiliser nos lv comme des partitions normales :

$ mke2fs -j /dev/vg0/lv0
$ mount /dev/vg0/lv0 /mnt

Enfin, il faut tout de même faire attention si on veut l'utiliser pour la partition /. En effet, le noyau ne scanne pas de lui-même les partitions lvm, ce sont les utilitaires pvscan, vgscan et vgchange qui doivent être appelés pour les activer. Ils le sont automatiquement par votre distribution, mais il faut disposer d'un / pour les avoir. Donc si vous voulez une racine en lvm, il vous faudra nécessairement un initrd (c'est le cas par défaut pour la plupart des distributions).

D'autre part pour une bonne détection au démarrage, fixez le type de vos partitions à "Linux LVM", (0x8E). Par exemple avec cfdisk.

$ cfdisk /dev/sda

Dans un prochain article nous verrons les fonctionnalités excitantes : redimensionement , snapshot, raid 0, raid 1 ...

En attendant, la référence se trouve sur le LVM howto

Si vous avez aimé, il y a aussi :

  1. Forcer la relecture des partitions
Leave a comment

Comments

  • ball
    September 15th, 2008 at 11:14 AM

    À préciser (je trouve que c’est pas explicite dans l’article et c’est dommage), qu’on peut choisir les noms qu’on veut pour les VG et LV, et pas forcément lv0, lv1, etc.

  • September 15th, 2008 at 1:40 PM

    Oui, tout à fait, on peut même utiliser cette fonctionnalité pour donner des noms explicites à des partitions.

  • gwir
    September 18th, 2008 at 9:06 AM

    Bonjour,

    Effectivement le lvm c’est magique, mais je me demande ce qu’il se passe si on utilise des disques de performances différentes (on mixe dans l’urgence du 7200rpm avec du 4200 par exemple, pour répondre à un besoin ponctuel en attendant l’achat d’un gros disque)? Les temps d’accès deviennent sans doute beaucoup plus aléatoires?

  • September 18th, 2008 at 10:19 AM

    Ca dépend de la facon dont est mis en place le lvm (voir un autre article un peu après), par défaut c’est linéaire, une partie du système de fichier sera lente et l’autre rapide (installer le disque rapide en premier de préférence).

    Par contre si on utilise le stripping, la lecture se fera sur les 2 disques, donc ce sera plutôt aléatoire pour les petits fichiers et des performances correctes pour des gros (mais plus proche de 2*4200 que de 7200+4200).


Leave a Reply

Linux Attitude Linux Attitude
Copyright © 2020 Linux Attitude Design by SRS Solutions top

AltStyle によって変換されたページ (->オリジナル) /