Dans le cas où le manque d’espace se fait sentir sur une des machines virtuelles hébergée par Xen, sachez qu’il est possible d’augmenter son espace disque facilement.
Disque dur avec « fichier loopback »
La technique donnée ici est dans le cas où vous avez des disques durs dits « fichier loopback »
Nous commençons par créer un fichier temporaire de 1 Gio qui nous servira à augmenter la taille de notre disque dur par la suite.
dd if=/dev/zero of=/tmp/xen_disk_temp bs=1024k count=1000
Si ce n’est déjà fait, il faut stopper la machine virtuelle.
xm shutdown nom-de-la-machine
Ensuite, à l’aide du fichier créé précédemment, nous allons augmenter la taille de notre disque virtuel. Ici il ne va gagner que 1 Gio d’espace, pour plus, exécuter à nouveau la commande.
cat /tmp/xen_disk_tem >> /home/xen/domains/nom-de-la-machine/disk.img
Il est possible de faire une boucle pour automatiser le traitement. Ici nous allons augmenter la taille de 10 x 1 Gio.
for i in $(seq 1 10); do cat /tmp/xen_disk_tem >> /home/xen/domains/nom-de-la-machine/disk.img; done
On étend la partition pour profiter de la nouvelle taille disponible.
resize2fs -f /home/xen/domains/nom-de-la-machine/disk.img
Il est possible de procéder à une vérification du fichier loopback.
fsck.ext4 disk.img
Tout ceci fait, on peut maintenant redémarrer la machine et constater l’augmentation de l’espace disque.
xm create nom-de-la-machine
Disque dur LVM
Quant à LVM, la procédure est plus simple, il suffit d’utiliser les outils LVM mis à disposition. Ces opérations sont à exécuter machine virtuelle stoppée.
On augmente de 10 Gio le volume logique. Il est possible de mettre des valeurs négatives pour diminuer la taille.
lvresize -L +10g /dev/nom_du_groupe/nom_du_volume
On vérifie le volume logique.
e2fsck -f /dev/groupe1/nom_du_groupe/nom_du_volume
On étend la partition pour profiter de la nouvelle taille disponible.
resize2fs /dev/groupe1/nom_du_groupe/nom_du_volume