Retailler le disque d'une VM
De wikiGite
NOTE : la procédure fonctionne bien avec des partitions en LVM (Logical Volume Manager) au niveau du système invité. Pour des partitions standards étendues avec Gparted, c'est à vos risques et périls...
Il est plus difficile d'étendre un VG en lui disant que son PV a changé de taille (ce qui n'est pas "naturel") que de déclarer un nouveau disque virtuel à part.
Synopsis : L'OPERATION CONSISTE A ETENDRE LE VG (Volume Group) en déclarant un nouveau PV (Physical Volume) sur la place libre créée par extension du disque virtuel, puis en ajoutant ce PV au VG.
Ensuite, on étend le LV (Logical Volume) sur la totalité du VG, puis idem pour le filesystem.
Arrêter la VM
Sauvegarder la VM
Ensuite il faut étendre les partition OS qui ont pu être créées dans les guests
Sur guest avec partitions standards
repérer le nom du vmdk puis :
vmware-vdiskmanager -x 190Gb /var/vm/sample_vm/sample_vm.vmdk
NOTE ESXi : les disques thin peuvent être retaillés avec vmkfstools -X.
Utiliser ensuite une image de liveCD GParted pour redimensionner le filesystem.
Sur guest avec LVM
Créer un nouveau disque virtuel sur la VM (par VI Client ou avec vmkfstools pour un disque dynamique (cf procédure))
Démarrer la VM
Créer une partition sur le nouveau disque (ex : /dev/sdb)
fdisk /dev/sdb n (entrer un numéro libre de partition, puis tout par défaut) t (entrer le numéro de la partition, puis 8e pour la passer en Linux LVM) w
Créer un PV sur cette partition
pvcreate /dev/sdc1
Etendre le volume group (vgdiplay pour avoir son nom)
vgextend VolGroup00 /dev/sdc1
Vérifier la VGsize par vgdisplay
Etendre un volume logique. Réperer son nom par df puis par lvdisplay pour avoir le chemin exact
lvextend -L +160G /dev/VolGroup00/LogVol04 #(prendre la Free PE / Size de vgdisplay)
Puis étendre le filesystem
df #pour repérer le device umount /dev/VolGroup00/LogVol04 #(lsof s'il ne veut pas le démonter) e2fsck -f /dev/VolGroup00/LogVol04 #(obligatoire avant resize) resize2fs /dev/VolGroup00/LogVol04
Reboot pour la forme.