Table des matières
Redimensionnement d'un volume LVM
On s'intéresse à étendre les volumes.
Cas d'un logical volume utilisé « comme un disque »
On peut s'en assurer en essayant fdisk sur le volume. Par exemple :
# fdisk -l /dev/mapper/vg_bling-blang Disk /dev/mapper/vg_bling-blang: 100 GiB, 107374182400 bytes, 209715200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 77F6EC72-182F-4719-BFEB-DE7424080479 Device Start End Sectors Size Type /dev/vg_bling-blang1 2048 209715166 209713119 100G Linux filesystem
On voit bien que le LV blang
sur le VG bling
est une périphérique bloc contenant une table de partition et une unique partition. Il va falloir agir manuellement aux différents niveaux.
Extension du logical volume
Pour étendre le volume de 100Go par rapport à sa taille actuelle, il suffit de faire
# lvextend -L+100G /dev/mapper/vg_bling-blang
Correction de la table de partition
Si on relance fdisk, on va avoir un gros warn :
GPT PMBR size mismatch (...) will be corrected by w(rite).
Donc on va faire ça. Sauf que fdisk ne semble pas toujours faire le job. Alternativement, parted fonctionne :
# parted /dev/mapper/vg_bling-blang GNU Parted 3.2 Using /dev/mapper/vg_bling-blang Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Warning: Not all of the space available to /dev/mapper/vg_bling-blang appears to be used, you can fix the GPT to use all of the space (an extra 209715200 blocks) or continue with the current setting? Fix/Ignore? Fix [...]
Extension de la partition
On retaille la première partition en la terminant à 100% de l'espace disponible :
(parted) resizepart Partition number? 1 End? [107GB]? 100% (parted) quit
À ce stade, la partition a été élargie mais le système de fichier n'occupe pas toute la place.
Par ailleurs, si le volume est utilisé par une machine virtuelle, il faut que celle-ci soit mise au courant des changements de partition. Le plus simple c'est probablement de la redémarrer.
Extension du système de fichier
Dans notre cas le volume est utilisé par une machine virtuelle et la partition est montée. On peut redimensionner sans soucis une partition montée car on augmente sa taille. Mais on le fait depuis la VM. Dans notre cas la partition concernée est /dev/vdb1 ; il suffit donc de lancer :
# resize2fs /dev/vdb1
Cas d'un logical volume utilisé « comme une partition »
A priori pour étendre le volume de 100Go par rapport à sa taille actuelle, c'est beaucoup plus simple. Il suffit de faire :
# lvextend -L+100G --resizefs /dev/mapper/vg_bling-blang
Cas d'un logical volume utilisé « comme une partition » via libvirt (félicette)
Exemple de passage de 600G à 800G :
Se connecter à l'hôte (par ex galanga) :
# lvextend -L +200G /dev/vg_galanga/borg_backup # virsh blockresize felicette --path /dev/vg_galanga/borg_backup --size 800G
Se connecter y félicette :
# parted /dev/vdb
(parted) resizepart Warning: Not all of the space available to /dev/vdb appears to be used, you can fix the GPT to use all of the space (an extra 419430400 blocks) or continue with the current setting? Fix/Ignore? F Partition number? 1 Warning: Partition /dev/vdb1 is being used. Are you sure you want to continue? Yes/No? yes End? [644GB]? 100% (parted) quit Information: You may need to update /etc/fstab.
# resize2fs /dev/vdb1