Hi, I have seen several cases where clean shutdown from proxmox console / qm shutdown from ssh fails.
On windows vm qemu guest agent occasionally crash and when happen qm shutdown didn't work.
I had qm shutdown not working also on some old linux vm migrated from Debian 10 host (was kvm using libvirt).
About linux vm I saw that qemu guest agent was not installed, an oversight of mine during the migration from xen to debian 8 with libvirt/kvm many years ago, and I didn't even notice during several dist-upgrades to new Debian versions made over the years, I suppose that libvirt automatically fallback to other method in case of missing or non-working qemu agent.
I did some tests and I saw that if you disable the qemu agent from the vm settings the shutdown works while when it is active it only works if the qemu agent is present and running in the vm.
I suggest adding a fallback in qm shutdown if not detect qemu agent running in the vm.
This will also make clean shutdown working in the case qemu agent option is enabled in the vm configuration but inside the vm qemu agent is missed or not working.
Sorry if I didn't explain good or for my bad english, if you need more information ask me.
I did the tests on updated host (except the kernel because 6.8 don't boot for driver issue with disk controller of the test server)
On windows vm qemu guest agent occasionally crash and when happen qm shutdown didn't work.
I had qm shutdown not working also on some old linux vm migrated from Debian 10 host (was kvm using libvirt).
About linux vm I saw that qemu guest agent was not installed, an oversight of mine during the migration from xen to debian 8 with libvirt/kvm many years ago, and I didn't even notice during several dist-upgrades to new Debian versions made over the years, I suppose that libvirt automatically fallback to other method in case of missing or non-working qemu agent.
I did some tests and I saw that if you disable the qemu agent from the vm settings the shutdown works while when it is active it only works if the qemu agent is present and running in the vm.
I suggest adding a fallback in qm shutdown if not detect qemu agent running in the vm.
This will also make clean shutdown working in the case qemu agent option is enabled in the vm configuration but inside the vm qemu agent is missed or not working.
Sorry if I didn't explain good or for my bad english, if you need more information ask me.
I did the tests on updated host (except the kernel because 6.8 don't boot for driver issue with disk controller of the test server)
Code:
pveversion -v
proxmox-ve: 8.3.0 (running kernel: 6.5.13-6-pve)
pve-manager: 8.3.0 (running version: 8.3.0/c1689ccb1065a83b)
proxmox-kernel-helper: 8.1.0
proxmox-kernel-6.8: 6.8.12-4
proxmox-kernel-6.8.12-4-pve-signed: 6.8.12-4
proxmox-kernel-6.8.12-1-pve-signed: 6.8.12-1
proxmox-kernel-6.8.4-3-pve-signed: 6.8.4-3
proxmox-kernel-6.5.13-6-pve-signed: 6.5.13-6
proxmox-kernel-6.5: 6.5.13-6
proxmox-kernel-6.5.13-5-pve-signed: 6.5.13-5
ceph-fuse: 16.2.11+ds-2
corosync: 3.1.7-pve3
criu: 3.17.1-2
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx11
ksm-control-daemon: 1.5-1
libjs-extjs: 7.0.0-5
libknet1: 1.28-pve1
libproxmox-acme-perl: 1.5.1
libproxmox-backup-qemu0: 1.4.1
libproxmox-rs-perl: 0.3.4
libpve-access-control: 8.2.0
libpve-apiclient-perl: 3.3.2
libpve-cluster-api-perl: 8.0.10
libpve-cluster-perl: 8.0.10
libpve-common-perl: 8.2.9
libpve-guest-common-perl: 5.1.6
libpve-http-server-perl: 5.1.2
libpve-network-perl: 0.10.0
libpve-rs-perl: 0.9.0
libpve-storage-perl: 8.2.9
libspice-server1: 0.15.1-1
lvm2: 2.03.16-2
lxc-pve: 6.0.0-1
lxcfs: 6.0.0-pve2
novnc-pve: 1.5.0-1
proxmox-backup-client: 3.2.9-1
proxmox-backup-file-restore: 3.2.9-1
proxmox-firewall: 0.6.0
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.3.1
proxmox-mini-journalreader: 1.4.0
proxmox-widget-toolkit: 4.3.1
pve-cluster: 8.0.10
pve-container: 5.2.2
pve-docs: 8.3.1
pve-edk2-firmware: 4.2023.08-4
pve-esxi-import-tools: 0.7.2
pve-firewall: 5.1.0
pve-firmware: 3.14-1
pve-ha-manager: 4.0.6
pve-i18n: 3.3.1
pve-qemu-kvm: 9.0.2-4
pve-xtermjs: 5.3.0-3
qemu-server: 8.3.0
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.6-pve1
Last edited: