Ceci est une ancienne révision du document !
Voici une table de partition classique d’une VM
root@debian:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 10G 0 disk ├─sda1 8:1 0 9,4G 0 part / ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 583M 0 part [SWAP] sr0 11:0 1 783M 0 rom df -h /dev/sda1 Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur /dev/sda1 9,2G 1,1G 7,7G 13% /
On a un disque de 10Go et une partition de 9.4Go que l’on veut augmenter de 2Go.
On augmente la taille du disque dans proxmox
Menu Hardware on clique sur Hard Disk puis on clic en haut dans le menu sur Disk Action puis Resize
J’ai ajouté 2Go au disque, on le retrouve bien directement ici sur la taille du disque, mais rien n’a changé sur les partitions.
root@debian:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 12G 0 disk ├─sda1 8:1 0 9,4G 0 part / ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 583M 0 part [SWAP] sr0 11:0 1 783M 0 rom df -h /dev/sda1 Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur /dev/sda1 9,2G 1,1G 7,7G 13% /
Maintenant on installe ce paquet
apt install cloud-guest-utils
Et on va augmenter la taille de notre partition sda1
growpart /dev/sda 1 NOCHANGE: partition 1 could only be grown by 2046 [fudge=2048]
Ok la partition a augmenter doit se trouver à la fin du disque, car ici, il n’y a pas d’espace disponible entre sda1 et sda2
On peut déplacer les partitions avec gparted, même si lsblk montre les partitions dans l’ordres de leur nom, du moment que sda1 est physiquement à la fin du disk, ça marchera.
Une fois le growpart exécuté avec succès, utiliser la commande suivante
resize2fs /dev/sda1
Constatez avec un df -h que tout est ok
J’ai eu ce problème sur le backup d’un LXC
INFO: starting first sync /proc/3224260/root/ to /var/tmp/vzdumptmp3498328_150 ERROR: rsync: [receiver] write failed on "/var/tmp/vzdumptmp3498328_150/var/log/journal/b4d4726a5f8b4fc88c6c226650ca0668/system@f30e550852f241da980f73b64033da35-000000000074f9ae-000640a1a2cf98a9.journal": No space left on device (28) ERROR: rsync error: error in file IO (code 11) at receiver.c(381) [receiver=3.2.7] ERROR: rsync: [sender] write error: Broken pipe (32) ERROR: Backup of VM 150 failed - command 'rsync --stats -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative '--exclude=/tmp/?*' '--exclude=/var/tmp/?*' '--exclude=/var/run/?*.pid' /proc/3224260/root//./ /var/tmp/vzdumptmp3498328_150' failed: exit code 11 INFO: Failed at 2025-10-22 04:07:46
Il s’avère que proxmox fait une copie dans le répertoire temporaire par défaut qui est /var/tmp
Sauf que ce répertoire se trouve sur la partition système qui n’est pas très grande.
Pour résoudre le problème, il faut définir à la main le répertoire temporaire dans /etc/vzdump.conf
tmpdir: /var/lib/vz/tmp
Quelques commandes
pct list
Faire un checkdisk
pct fsck <vmid>
Ajouter 2G
pct resize <vmid> rootfs +2G
e2fsck -f -y /var/lib/vz/images/150/vm-150-disk-0.raw e2fsck -p /var/lib/vz/images/150/vm-150-disk-0.raw resize2fs /var/lib/vz/images/150/vm-150-disk-0.raw
Quelques commandes
Pour avoir la config d’une VM (identique au fichier /etc/pve/qemu-server/<vmid>.conf )
qm config <vmid>
Voir plus → https://pve.proxmox.com/pve-docs/qm.1.html
Dans le cas de TrueNAS qui sort l’erreur
Disks have duplicate serial numbers: None (sda, sdb)
Il faut modifier le fichier /etc/pve/qemu-server/<vmid>.conf
repérer les lignes
scsi0: thin_provision:vm-212-disk-0,discard=on,iothread=1,size=32G scsi1: thin_provision:vm-212-disk-1,iothread=1,size=5G
Et ajouter serial=12345
scsi0: thin_provision:vm-212-disk-0,discard=on,iothread=1,size=32G,serial=12345 scsi1: thin_provision:vm-212-disk-1,iothread=1,size=5G,serial=12346
Menu: proxmox9 / System / Network
Name: vmbr1 IPv4/CIDR : 192.168.0.1/24 Gateway (IPv4) : (vide) Bridge ports: (vide)
cat /proc/sys/net/ipv4/ip_forward echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j MASQUERADE
Pour pérenniser cette config
vi /etc/sysctl.d/99-sysctl.conf (ou créer un fichier vide avec ce qui suit) # Uncomment the next line to enable packet forwarding for IPv4 net.ipv4.ip_forward=1
Créer un fichier
vi /etc/network/if-pre-up.d/nat_vmbr1
#!/bin/bash iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j MASQUERADE
chmod +x /etc/network/if-pre-up.d/nat_vmbr1
ip a
3: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 00:00:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet xxx.xxx.xxx.xxx/24 scope global vmbr0
valid_lft forever preferred_lft forever
inet6 xxxx::xxx:xxxx:xxxx:xxxx/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
4: vmbr1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 56:0f:bd:5e:69:e8 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.1/24 scope global vmbr1
valid_lft forever preferred_lft forever
inet6 xxxx::xxxx:xxxx:xxxx:xxxx/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
ip route
default via xxx.xxx.xxx.1 dev vmbr0 proto kernel onlink
xxx.xxx.xxx.0/24 dev vmbr0 proto kernel scope link src xxx.xxx.xxx.xxx
192.168.0.0/24 dev vmbr1 proto kernel scope link src 192.168.0.1
ping -I vmbr0 google.fr
-> ça marche
ping -I vmbr1 google.fr
-> ça marche pas (normal)
ifup vmbr1
ip a show dev vmbr1
Si l’état de vmbr1 est UNKNOWN au lieu de UP, c’est normal si aucune VM n’est allumé et configuré sur vmbr1
Au niveau hardware, le Network Device (net0) doit avoir le bridge configuré sur vmbr1
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug ens18
iface ens18 inet static
address 192.168.0.10/24
gateway 192.168.0.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 213.186.33.99
dns-search edmc.local
ip route default via 192.168.0.1 dev ens18 onlink 192.168.0.0/24 dev ens18 proto kernel scope link src 192.168.0.2