Lorsqu’une machine virtuelle (VM) hébergée sur XCP-ng atteint la limite de l’espace disque disponible, il est possible d’étendre dynamiquement son volume principal sans perte de données. Ce tutoriel décrit l’ensemble des étapes nécessaires pour augmenter la taille d’un disque principal contenant un système de fichiers EXT4, en ligne de commande, et dans des conditions réelles.
Exemple utilisé : une VM Debian 12 avec un disque virtuel initialement configuré à 49 Go, étendu à 100 Go via l’interface de gestion XCP-ng.
Prérequis
- Une VM Linux avec accès
root
ousudo
- Un disque virtuel étendu (depuis l’hyperviseur)
- Le paquet
cloud-guest-utils
installé :
sudo apt install cloud-guest-utils
Vérifier l’état initial du disque
Avant toute modification, il est recommandé de visualiser l’état actuel du disque :
lsblk
Exemple de sortie :
xvda 202:0 0 100G 0 disk ├─xvda1 202:1 0 49G 0 part / ├─xvda2 202:2 0 1K 0 part └─xvda5 202:5 0 975M 0 part [SWAP]
Faut-il supprimer la partition principale ?
Dans la majorité des cas, la suppression de la partition principale xvda1
n’est pas requise si elle est en début de disque et qu’aucune autre partition ne bloque son extension.
Cas où la suppression n’est pas nécessaire :
xvda1
est la première partition- Il n’existe aucune autre partition après elle
Cas où la suppression est nécessaire :
- Une autre partition bloque l’extension
- La commande
growpart
échoue avec un message du type :
NOCHANGE: partition 1 could only be grown by 2046 [fudge=2048]
Suppression des partitions bloquantes
- Désactiver le swap :
sudo swapoff -a
- Lancer
fdisk
:
sudo fdisk /dev/xvda
Dans fdisk :
- Taper
p
pour afficher la table - Supprimer les partitions
5
(swap) puis2
(étendue) - Écrire avec
w
- Recharger la table de partition :
sudo partprobe
Extension de la partition principale
- Étendre la partition avec
growpart
:
sudo growpart /dev/xvda 1
- Étendre le système de fichiers EXT4 :
sudo resize2fs /dev/xvda1
Vérification
df -h /
Exemple de sortie :
Filesystem Size Used Avail Use% Mounted on /dev/xvda1 99G 37G 58G 39% /
Recréer un fichier de swap
sudo fallocate -l 1G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile
Ajouter au fichier /etc/fstab
:
/swapfile none swap sw 0 0
Vérifier avec :
free -h
total used free shared buff/cache available Mem: 11Gi 6.6Gi 181Mi 276Mi 5.5Gi 5.1Gi Échange: 1.0Gi 106Mi 917Mi
Conclusion
Étendre un disque principal sous Linux dans une machine virtuelle XCP-ng peut être effectué sans perte de données en supprimant uniquement les partitions bloquantes et en étendant intelligemment la partition racine. Cette méthode permet d’éviter toute réinstallation ou manipulation risquée, tout en maintenant un système stable et fonctionnel.
Articles de la même catégorie
Installer Nginx en reverse proxy avec Apache2 sur Debian, Ubuntu et Raspberry
Aujourd’hui nous allons voir comment utiliser Nginx comme un reverse proxy pour fonctionner avec Apache2. Nous allons commencer par une explication de ce qu’est un
Activer la compression Brotli sur Nginx – Debian, Ubuntu
Aujourd’hui nous allons voir comment ajouter le module Brotli à Nginx. Ce module est disponible nativement dans Apache depuis la version 2.4.26. Pour Nginx vous
Monter un disque sur Linux avec systemd (et sans fstab)
Pour monter un disque au boot d’une machine sur Linux, on utilise régulièrement fstab. Cette solution fonctionne très bien, mais elle a quand même un