L'agrandissement du swap sans arrêter la machine virtuelle, c'est possible mais il faut vérifier si il vous reste assez de RAM :
Coté machine virtuelle: arrêt du swap et vérification
swapoff /dev/<xvdxy>
swapon --show
Coté xen (server): détacher le disque swap
xl block-list <nom_machine>
xl block-detach <nom_machine> <xvdxy>
Coté xen (server): étendre le fichier image du swap (swap.img) (ici on passe le swap à 4Go)
truncate -s 4G </chemin/absolu/du/fichier/de/swap/swap.img>
vérification:
ls -lh </chemin/absolu/du/fichier/de/swap/swap.img>
Coté xen (server): rattacher le disque swap
xl block-attach <nom_machine> file:</chemin/absolu/du/fichier/de/swap/swap.img>,xvdxy,w
Coté machine virtuelle: reformater et réactiver
vérification que l'augmentation a bien été faite
lsblk /dev/xvdxy
formatage et activation
mkswap /dev/xvdxy
swapon /dev/xvdxy
vérification:
swapon --show
free -h
Bien vérifier que l'UID n'a pas changé (/etc/fstab)
Résumé:
Étape Action
swapoff
VM
obligatoire
block-detach
Xen
pour que la nouvelle taille soit prise en compte
truncate -s 4G swap.img
Xen
étendre le backend
block-attach
Xen
rebrancher xvda1
mkswap + swapon
VM
« reformater » + activer