Unable to update VM's network interface.

EnhancedC

New Member
Oct 4, 2023
2
0
1
I'm running a small 3 node cluster running HA. When attempting to update a VM's network interface e.g. net0, i get this error

code_language.shell:
root@node-01:~# qm set 104 --net0 model=virtio,bridge=vmbr1,firewall=0
update VM 104: -net0 model=virtio,bridge=vmbr1,firewall=0
unable to apply pending change net0 : Undefined subroutine &PVE::QemuServer::safe_string_ne called at /usr/share/perl5/PVE/QemuServer.pm line 5252.
400 Parameter verification failed.
net0: unable to apply pending change net0 : Undefined subroutine &PVE::QemuServer::safe_string_ne called at /usr/share/perl5/PVE/QemuServer.pm line 5252.

qm set <vmid> [OPTIONS]
Screenshot 2024-10-08 114959.png
this will happen weather the VM is started or not, and when using the Web UI and qm set, the new setting will now just sit as pending

What i have tried.
I have ran apt update && apt full-upgrade. and restarted all 3 nodes.
Enabled the testing Branch, ran apt update && apt full-upgrade. and restarted all 3 nodes.
Tried the change from all 3 nodes, Same result.


Bash:
root@node-01:~# pveversion -v
proxmox-ve: 8.2.0 (running kernel: 6.8.12-2-pve)
pve-manager: 8.2.7 (running version: 8.2.7/3e0176e6bb2ade3b)
proxmox-kernel-helper: 8.1.0
proxmox-kernel-6.8: 6.8.12-2
proxmox-kernel-6.8.12-2-pve-signed: 6.8.12-2
proxmox-kernel-6.8.12-1-pve-signed: 6.8.12-1
proxmox-kernel-6.8.4-2-pve-signed: 6.8.4-2
ceph: 18.2.4-pve3
ceph-fuse: 18.2.4-pve3
corosync: 3.1.7-pve3
criu: 3.17.1-2
dnsmasq: 2.89-1
frr-pythontools: 8.5.2-1+pve1
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx9
ksm-control-daemon: 1.5-1
libjs-extjs: 7.0.0-4
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.1.4
libpve-apiclient-perl: 3.3.2
libpve-cluster-api-perl: 8.0.7
libpve-cluster-perl: 8.0.7
libpve-common-perl: 8.2.3
libpve-guest-common-perl: 5.1.4
libpve-http-server-perl: 5.1.2
libpve-network-perl: 0.9.8
libpve-rs-perl: 0.8.10
libpve-storage-perl: 8.2.5
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.4.0-4
proxmox-backup-client: 3.2.7-1
proxmox-backup-file-restore: 3.2.7-1
proxmox-firewall: 0.5.0
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.2.3
proxmox-mini-journalreader: 1.4.0
proxmox-offline-mirror-helper: 0.6.7
proxmox-widget-toolkit: 4.2.3
pve-cluster: 8.0.7
pve-container: 5.2.0
pve-docs: 8.2.3
pve-edk2-firmware: 4.2023.08-4
pve-esxi-import-tools: 0.7.2
pve-firewall: 5.0.7
pve-firmware: 3.13-2
pve-ha-manager: 4.0.5
pve-i18n: 3.2.3
pve-qemu-kvm: 9.0.2-3
pve-xtermjs: 5.3.0-3
qemu-server: 8.2.4
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.6-pve1

1728386066856.png
This is the same across all nodes


EDIT:

I am able to remove and re add the interface as a workaround
 
Last edited:
Hi,

can you try running apt update && apt reinstall -y qemu-server?

The code referenced by the error looks good, I can also not reproduce it here locally either.
Have you modified any system files? I can also recommend running apt install -y debsums && debsums -c, this essentially checks all installed files by packages for their consistency.
 
can you try running apt update && apt reinstall -y qemu-server?
Huh that worked, i had run apt --reinstall install qemu-server before submitting this in a attempt to do the same thing, which didn't work, are these command different.

Just for reference this is the output is debsums before running apt update && apt reinstall -y qemu-server

Bash:
root@node-01:~# debsums -c

root@node-01:~# debsums -a -s
debsums: changed file /etc/issue (from base-files package)
debsums: changed file /etc/bash.bashrc (from bash package)
debsums: changed file /etc/lvm/lvm.conf (from lvm2 package)
debsums: changed file /etc/apt/sources.list.d/pve-enterprise.list (from pve-manager package)
debsums: changed file /etc/kernel/postrm.d/zz-systemd-boot (from systemd-boot package)
debsums: changed file /etc/initramfs/post-update.d/systemd-boot (from systemd-boot package)
debsums: changed file /etc/kernel/postinst.d/zz-systemd-boot (from systemd-boot package)

I definitely didn't edit any files in /usr/share/perl5/PVE/ so no idea why this would happen in the first place.

But thanks for the quick response AND fix
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!