Outils personnels

Retailler le disque d'une VM

De wikiGite

Révision datée du 15 septembre 2009 à 09:12 par Frank (discussion | contributions) (Page créée avec « '''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 Gpa... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

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...

NOTE2 : on ne peut qu'augmenter la taille d'un disque virtuel, pas la réduire.

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

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. Mais 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.

Ensuite il faut étendre les partition OS qui ont pu être créées dans les guests

Sur guest avec partitions standards

(Note : ceci dit, ce serait peut-être pas mal de se mettre au LVM !), utiliser une image de liveCD GParted pour redimensionner le filesystem.

Sur guest avec LVM

Démarrer la VM

Créer une partition sur la place libre

fdisk
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

Reboot si on est sur le disque système et que la table de partitions ne peut pas être relue

Créer un PV sur cette partition

pvcreate /dev/sda3

Etendre le volume group (vgdiplay pour avoir son nom)

vgextend VolGroup00 /dev/sda3

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.