Un exemple récent et concret de l’avantage de LVM.
Lors de l’installation de sweetBox et lors de la création de mes volumes logiques, j’ai tout d’abord créé le lvhome (pour mon home) de 15Go puis le lvmulti (pour mes fichier multimédias) de 500Go.
(Les tailles indiquées pour mes différents LV dans l’article précédent sont les tailles finales après l’opération de redimensionnement que je décris ici)
Lorsque j’ai mis en œuvre ma solution de sauvegarde j’ai fait un tour du propriétaire pour me remémorer comment j’avais organisé mes partition LVM et leur points de montage.
État des lieux
Tout d’abord un vgdisplay pour connaitre la place disponible sur mon groupe de volume :
sudo vgdisplay mvg
--- Volume group --- System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 1 Max PV 0 Cur PV 1 Act PV 1 VG Size 558,79 GB PE Size 4,00 MB Total PE 143051 Alloc PE / Size 131840 / 515,00 GB Free PE / Size 11211 / 43,79 GB VG UUID EbIS8e-ZFI1-wYe4-EnAM-xBzu-yNf1-sM0Gv1
J’ai ainsi pu constater qu’il ne me restait que 44Go de libre or il me faudrait 100Go pour y stocker mes sauvegardes.
Comment sont utilisés les 559 Go « non libres » de mon groupe de volume ?
sudo lvdisplay
--- Logical volume --- LV Name /dev/mvg/lvhome VG Name mvg LV UUID J2hMwV-RTl2-T4D8-lm3w-x11y-qgAL-F3CFlM LV Write Access read/write LV Status available # open 1 LV Size 15,00 GB Current LE 3840 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:0 --- Logical volume --- LV Name /dev/mvg/lvmulti VG Name mvg LV UUID mDasL6-zgtb-Pgs3-3RYt-0PeY-xSZl-W6Usbz LV Write Access read/write LV Status available # open 0 LV Size 500,00 GB Current LE 128000 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:1
Le volume logique lvmulti est le plus gros, où est il monté ? de quelle place libre dispose-t-il ?
On cherche l’id de la partion LVM :
sudo blkid /dev/mvg/lvmulti /dev/vg/lvmulti: UUID="597ffe55-8502-4d66-b50f-80fa5aa6888d" TYPE="ext3"
Puis on cherche dans le fstab son point de montage :
cat /etc/fstab | grep 597ffe55-8502-4d66-b50f-80fa5aa6888d
UUID=597ffe55-8502-4d66-b50f-80fa5aa6888d /data/multimedia ext3 defaults 0 2
On peut enfin interroger le point de montage pour connaitre la place libre :
df -h | grep multimedia
493G 131G 337G 28% /data/multimedia
Il reste 337 Go de libre on peut donc aisément prendre les 56 Go que l’on veut pour avoir un groupe logique de 100Go pour la sauvegarde.
Diminution d’un volume logique
Démontage
Il faut commencer par démonter le point de montage de la partition LVM à diminuer
sudo umount /data/multimedia
Diminution du système de fichier
La règle connaitre pour une diminution d’une partition LVM est qu’il vaut mieux diminuer la système de fichier de plus que nous n’en n’avons réellement besoin, puis diminuer le volume logique de la taille voulue, enfin de ré-augmenter le système de fichier à 100% de la nouvelle taille du volume logique.
Dans mon cas j’ai 44Go de libre sur mon VG, j’en veux 100Go, il faut donc que je diminue lvmulti de 56Go, on arrondira à 60 Go.
Cette partition fait 493Go il devra donc faire au maximum 493 – 60 =433 Go.
Pour plus de sécurité je mets 428Go
Avant de redimensionner une partition ext3 il convient de faire un check disk :
sudo e2fsck -f /dev/mvg/lvmulti
e2fsck 1.41.4 (27-Jan-2009) Passe 1 : vérification des i-noeuds, des blocs et des tailles Passe 2 : vérification de la structure des répertoires Passe 3 : vérification de la connectivité des répertoires Passe 4 : vérification des compteurs de référence Passe 5 : vérification de l'information du sommaire de groupe /dev/mvg/lvmulti : 6490/32768000 fichiers (4.0% non contigus), 36222763/131072000 blocs
Redimensionnement de la partition ext3 en indiquant sa nouvelle taille :
sudo resize2fs -p /dev/mvg/lvmulti 428G
resize2fs 1.41.4 (27-Jan-2009) Resizing the filesystem on /dev/mvg/lvmulti to 112197632 (4k) blocks. Début de la passe 2 (max = 4917886) Relocalisation de blocs XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Début de la passe 3 (max = 4000) Examen de la table d'i-noeuds XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Début de la passe 4 (max = 416) Mise à jour des références d'i-noeudsXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Le système de fichiers /dev/mvg/lvmulti a maintenant une taille de 112197632 blocs.
Diminution du volume logique
On redimensionne le volume logique en indiquant de combien on veut le réduire :
sudo lvresize -L -60G /dev/mvg/lvmulti
WARNING: Reducing active logical volume to 440,00 GB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce lvmulti? [y/n]: y Reducing logical volume lvmulti to 440,00 GB Logical volume lvmulti successfully resized
Augmentation du système de fichier
Comme pour être sûr de ne pas faire de bétise on avait diminuer le système de fichier plus que nécessaire, on le raugmente pour qu’il prenne toute le place du volume logique :
sudo resize2fs /dev/mvg/lvmulti
resize2fs 1.41.4 (27-Jan-2009) Resizing the filesystem on /dev/mvg/lvmulti to 115343360 (4k) blocks. Le système de fichiers /dev/mvg/lvmulti a maintenant une taille de 115343360 blocs.
Remontage du système de fichier
La partition étant dans fstab on peut se contenter d’un :
sudo mount -a
On peut ensuite s’assurer que les données sont bien présente (avec un ls) et regarder la taille de la partition (avec un df -h)
La place étant libérée j’ai pu créer mon volume logique et le monter :
sudo lvcreate -L 103,79G -n lvsauv mvg sudo mkfs.ext3 /dev/mvg/lvsauv sudo blkid /dev/mvg/lvsauv /dev/vg/lvsauv: UUID="6e80089b-aae9-45d1-aaf9-bae9c6153fe4" TYPE="ext3" sudo mkdir /data/sauvegardes sudo vim /etc/fstab UUID=6e80089b-aae9-45d1-aaf9-bae9c6153fe4 /data/sauvegardes ext3 defaults 0 2 sudo mount -a ls /data/sauvegardes/
Edit :
28/06/2010 : remplacement de la commande vol_id (supprimée à partir d’Ubuntu 9.10) par blkid pour retrouver les UUID des disques durs
Source :
http://doc.ubuntu-fr.org/lvm