Proxmox VE 9.1.5 → 9.2.13
25 releases · 7 breaking changes · 2 security fixes · 0 advisories fixed
2security7breaking6deprecated76feature37fix
Breaking changes
- breaking api: ceph: mds: deprecate hotstandby parameter in the API schema, and do not set the mds_standby_for_name and mds_standby_replay config options any more, they were removed in Ceph 14.1 and setting them has no effect any more in 9.2.10
- breaking ui: qemu: default aarch64 VMs to a KVM-usable CPU model instead of one that QEMU rejects at start, and warn when an incompatible ARM CPU model is selected. in 9.2.9
- breaking Remove redundant checks for USB hotplug support and unplug events during unrelated VM configuration changes. in 9.2
- breaking Windows VMs using machine versions 11.0 or 11.0+pve1 are potentially affected by this issue. Such guests may have been created with the packages available in the Proxmox VE 9.2 ISO or qemu-server older than 9.2.0. Upgrading the qemu-server package and setting the machine version to 11.0+pve2 or… in 9.2
- breaking Windows VMs using machine version 11.0+pve2 or newer are not affected by this issue. Under qemu-server 9.2.0 or later, new Windows VMs are created with an unaffected machine version. in 9.2
- breaking Windows VMs using machine versions older than 11.0 are not affected if using qemu-server 9.2.0 or newer. in 9.2
- breaking ui: sdn: fabrics: add management UI for the new WireGuard fabric protocol. New panels under Datacenter > SDN > Fabrics let users create and edit WireGuard interfaces with their peer references on internal nodes, manage external peer definitions, and review per-node available peers. Public keys,… in 9.1.12
Security changes
- security Fix a boot issue for Windows guests with Virtualization-based Security (VBS) enabled by disabling the cet-ibt and cet-ss CPU flags. in 9.2
- security Prevent local "copy.fail" privilege escalation exploit via AF_ALG sockets within containers by using seccomp filtering (PSA-2026-00018-1). If AF_ALG support is required in a specific container, see the security advisory forum post for more details. in 9.2
Deprecations
- deprecated Switch from the deprecated block-job-complete to the newer job-complete QMP command. in 9.2
- deprecated Deprecate and warn about raw cgroup v1 entries in the container configuration. The support for cgroup v1 will be removed in a future release. in 9.2
- deprecated Switch from the deprecated /etc/timezone to the recommended timedatectl to initialize the containers timezone setting (issue 7175). in 9.2
- deprecated Deprecate the legacy starttime and dow parameters of the backup job API in favor of schedule. The legacy parameters were superseded by schedule since Proxmox VE 7.1 and have now been removed from the API response. in 9.2
- deprecated api: backup: deprecate the legacy 'starttime' and 'dow' parameters in favor of 'schedule' and drop them from the API response, as they have been superseded since PVE 7.1. in 9.1.8
- deprecated fix #7175: replace deprecated /etc/timezone handling with systemd timedatectl. in 9.1.7
Every release in between
9.2.13 Aug 28, 2026
featurepartially fix #1989: ui: qemu: allow configuring the qcow2 cache size when creating or editing a disk, either directly or derived from the disk size, which can improve performance considerably for some guests
otherapi: apt: accept the HTTP proxy as a URI, so that a password can contain special characters
otherceph: cephx key migration:
featureadd '--rotate-lockbox-keys' to migrate the 'client.osd-lockbox' key of an encrypted OSD. That key lives in the authentication database and in an LVM tag on the OSD's block device that ceph-volume rebuilds the keyring from, so rotating only the entry left the OSD unable to unlock, and recreating it…
otherlist the options that are still open when a run finishes, so that ending the migration does not mean looking up which key groups are left
otherrecover the admin keyring through the 'mon.' credential when a run was interrupted while rotating 'client.admin', which left the cluster without a usable admin key before
othercommit rather than drop a pending key when a live key swap was interrupted after the key reached the bluestore label, as the OSD data directory is rebuilt from that label at boot
otherplan a newer interrupted rotation of an entity even if an older run finished one, for example after a key reset by hand or a reused OSD id
otherrequire every monitor in quorum only for a monitor key rotation, so a cluster with one monitor down can still migrate its daemon keys
otherreport daemons and nodes whose Ceph version or kernel could not be verified apart from those known to be outdated
otherrestore 'auth_preferred_cipher' also when a run fails, and refuse to continue over an unknown recorded value instead of dropping it
otherhold a second apply run on any node back through a lock on the cluster file system, and take the node's bulk restart lock as well, so that a rolling restart from the web interface cannot start there meanwhile
otherrecord which OSDs a run sets 'noout' on before setting it, so that a hard kill in between cannot leave the flag without a record to clean up from
featurerotate the standby managers before the active one, so that a failover lands on a manager that already carries the new key
otherreport whether an authentication check is still an error from what the run itself confirmed, as the monitors recompute on their own tick
othercut the output of a run down to what decides whether to proceed
9.2.12 Aug 22, 2026
fixfix #7136: ui: tree: harmonize folder view resource ordering
fixfix #6113: ui: import: allow selecting a resource pool when importing a guest from an OVA file or from VMware ESXi
otherceph: rolling restart:
featureallow a restart on a cluster whose only errors are the cephx cipher health checks that Ceph 19.2.6 and 20.2.4 raise. Those made every upgraded cluster report HEALTH_ERR, which blocked every rolling restart, so one could not be finished and left daemons on mixed versions
otherjudge each health check on its own severity instead of on the overall cluster status
otherignore health checks that Ceph itself has muted
otherevaluate the OSD map flags only for an OSD restart, as they do not affect monitor quorum, manager failover or MDS takeover. A 'nodown' set to stop OSDs from flapping no longer blocks a monitor restart
otherreport per daemon type whether a check blocks a restart, so the web interface only warns about what applies to the restart at hand
otheronly clear the 'noout' flags the restart set itself. A flag an operator had set on a single OSD, to stop it flapping or while working on its disk, was cleared as soon as any rolling restart finished
featureceph: allow muting and unmuting a health check from the web interface and the API. A muted check is still evaluated and reported, but it no longer counts towards the overall cluster status. That is the only answer for a check that cannot be acted on, and it was previously only possible on the…
featureceph: add 'pveceph auth status', a read-only report on which cephx keys still use the old cipher, whether they can be migrated yet, and what is holding that up, including the kernel version of every node.
fixceph: add a guided helper to migrate the cephx service keys to the aes256k cipher: /usr/share/pve-manager/migrations/pve-cephx-rotate-service-keys It goes through the daemons of the whole cluster one at a time and can be narrowed to a single daemon type or a single daemon. It runs as a dry run…
otherpve8to9: name the cephx key migration health checks instead of asking to resolve them, as an upgraded cluster reports its unmigrated keys as insecure and the client keys cannot be migrated at all on a Bookworm kernel.
fixfix #7927: ui: sdn prefix-lists: change the prefix format to allow bigger subnets, covering the full CIDR prefix range including 0.0.0.0/0.
9.2.11 Aug 14, 2026
otherui: certificates, lxc DNS, VM cloud-init and PCI: encode rendered values with htmlEncode.
featureui: acme: use improved URL rendering implementation from proxmox-widget-toolkit.
9.2.10 Aug 7, 2026
otherpveperf: make bogomips regular expression case insensitive, other architectures like Loong64 use different capitalization
otherui: LXC templates: hide foreign architectures by default, arm64 and amd64 look very similar and can be easily confused
otherui: appliance templates: rename the "Package" column to "Name"
featureui: LXC templates: add a search hint to the "download" dialogue and widen the search input field
breakingapi: ceph: mds: deprecate hotstandby parameter in the API schema, and do not set the mds_standby_for_name and mds_standby_replay config options any more, they were removed in Ceph 14.1 and setting them has no effect any more
9.2.9 Aug 3, 2026
breakingui: qemu: default aarch64 VMs to a KVM-usable CPU model instead of one that QEMU rejects at start, and warn when an incompatible ARM CPU model is selected.
9.2.7 Aug 2, 2026
featureceph: when installing, offer only the Ceph releases that have packages for the node's architecture, from a new per-node API endpoint instead of a hardcoded list, so an arm64 node no longer lists releases without an arm64 build.
othersubscription: bind keys to a CPU architecture; arm64 keys carry an explicit marker, and a key that does not match the node's architecture is rejected in the API and CLI and flagged early in the web interface.
othercontainers: show the appliance template architecture in "pveam available" and the template selector, and point out when it differs from the node it would run on.
fixfix #7187: add the ethtool output for physical network interfaces to the system report, to help debug link and offloading issues.
featureadd tooltips describing the acceleration modes to the VM CPU flag selector.
otherpvesh: support API paths whose parameters are described through composed 'allOf' or 'oneOf' schemas, which the HA rules endpoints use as of libpve-common-perl 9.1.21, so that their options keep being accepted.
9.2.6 Jul 31, 2026
otherfabrics: wireguard: node edit: use network selector for internal nodes, making the semantics of the field more obvious, and entering values less error-prone and manual.
otherapi: apt: versions: track proxmox-enterprise-support-keyring version
featureui: ha: node affinity: refactor and extend UI, allow configuring "positive" or "negative" affinity rules. negative affinity allows declaring nodes on which HA resources must not (strict rule) or should not (non-strict) run on.
featureui: ha: resource affinity: add hint for affinity type config value, mapping "positive" to "Keep Together", and "negative" to "Keep Separate", like the create/edit dialogue already did before.
otherui: ceph: pool: set target ratio to 0 when the value is not set, to explicitly clear the value instead of not sending the value to the backend and keeping the previous value set.
9.2.5 Jul 15, 2026
featureceph: add guided rolling-restart for Ceph daemons, available both from the API and the web interface, so operators can safely cycle all OSDs, monitors, managers or metadata servers of a cluster after a configuration or kernel change without hand-rolled scripts. Each step waits for the previous…
fixceph: osd: drop two obsolete cleanup workarounds now handled elsewhere: Ceph itself runs 'pvremove' while zapping an OSD, so our own call could fail on an already-removed physical volume, and the udev trigger worked around a systemd bug fixed long ago.
otherceph: skip re-broadcasting the Ceph service status to the cluster file system on every pvestatd cycle when nothing changed, avoiding needless pmxcfs writes.
fixfix #6948: ui: ceph: configuration database: automatically show the MASK column once any entry uses a mask, so masked settings such as 'osd/class:hdd' are no longer indistinguishable from cluster-wide ones.
fixui: sdn: fabrics: fix adding and editing BGP unnumbered interfaces, which carry no per-interface IP address. The IPv4 column is now optional and stale 'ip'/'ip6' properties are no longer submitted, which previously made the backend reject the interface as not defined in the schema.
otherapi: sdn: avoid a double slash in delete request URIs, which a strict firewall or proxy could reject even though the server normalizes it.
fixfix #7460: ui: sdn: point the BGP and IS-IS controller help buttons to their own documentation sections instead of the EVPN one.
otherui: VM boot order: hint that OVMF (UEFI) guests need a virtual RNG device for PXE network boot to work.
otherui: VM vCPU: drop the artificial upper limit on the socket count in the edit dialog, matching the backend which imposes none.
featurepostinst: add kernel NBD devices to the global LVM filter on new installations, to avoid clashes with volume groups on NBD-mapped external disks, for example nested Proxmox VE systems or disks accessed by external backup providers.
otherupdate shipped appliance info index.
9.2.4 Jun 29, 2026
fixfix #4130: external metric server: keep node status updates flowing when a TCP metric server is unreachable. A failed connection previously raised an unhandled exception that aborted the whole node status update, so storage and guest status indicators in the UI eventually turned gray.
fixfix #6348: ui: bulk action: render the resource tags in the selection list using the configured tag style instead of plain text.
featureui: node: show the system log in a structured journal view that colors entries by syslog priority and adds server-side filters for the minimum priority, a systemd unit, a syslog identifier and kernel-only messages, with autocompletion for the unit and identifier filters.
otherui: node: open a service's log in that structured journal view, scoped to the service's systemd unit, instead of as plain text.
otherui: VM CPU flag selector: replace the per-flag radio group and the separate read-only state column with a single Off/Default/On segmented button that both shows and sets the state, and re-enable column sorting.
otherui: custom CPU model: validate the name in the creation dialog against the allowed config-ID format, rejecting invalid names in the frontend instead of only after the backend refuses them.
fixui: sdn: fabrics: fix editing a node interface that already has an IPv6 address, which did not show up and failed to submit because the field was named 'ipv6' instead of the 'ip6' the schema expects, and label the interface address column 'IPv4' instead of the ambiguous 'IP'.
fixui: fix the QEMU version comparison behind the dynamic USB port limit, which wrongly required the minor version to also be greater or equal even when the major version was already newer, so the higher USB port count for capable machine and OS types was not offered.
otherui: stop displaying a misleading 0% disk usage for VMs in the resource views; the field is left empty again, as VM disk usage is not currently queried from the guest agent.
9.2.3 May 24, 2026
featureui: storage content: show the owning guest of a volume and add an action to jump to it.
otherapi schema: cluster options: declare the actual return schema type.
9.2.2 May 21, 2026
featuresdn: fabrics: wireguard: drop the separate endpoint-port field added to the node-edit window in 9.1.19. The underlying schema change in proxmox-ve-config has been reverted: the endpoint now stores only the host, and the connect port is derived from the referenced interface's listen_port at…
featuresdn: fabrics: tighten the fabric and node configuration forms: require at least one prefix, hide node address fields for prefix families that are not configured on the fabric, and disable prefix editing once nodes have been added (since changing the prefix would invalidate existing nodes).
otherui: VM CPU flag selector: disable column sorting as a stop-gap, since sorting and then editing a flag could leave the radio-button widgets in moved rows showing the wrong selected state.
featureLatest 7.0 Kernel as new stable default
featureDynamic Load Balancing with the Cluster Resource Scheduler (CRS). In dynamic scheduling mode, the CRS uses real-time node and guest resource utilization metrics to balance HA-managed guests. The new load balancer can automatically migrate HA-managed guests to lower the overall node imbalance…
featureNumerous improvements to the Software Defined Networking (SDN) stack: Add WireGuard and BGP as new fabric protocols. Add support for route maps and prefix lists for fine-grained BGP/EVPN route filtering. Further additions include route redistribution for OSPF fabrics, additional options for…
featureManagement of custom CPU models from the web interface. A new section in the Datacenter → Guest Resources/Hardware allows creating, editing, and removing custom CPU models from the web interface. Custom CPU models allow tailoring the virtual CPU exposed to VMs to a specific set of features. The VM…
featureDisarm and arm HA for safer cluster maintenance. The HA stack can now be disarmed cluster-wide via the new disarm-ha and arm-ha CRM commands. This allows for planned, cluster-wide maintenance work, such as changes in the cluster network, without triggering any node fencing events. The HA resource…
featureKernel 7.0 as new stable default.
featureCeph Tentacle 20.2.1 is available as stable option.
featureExpose the parallel worker count for all bulk actions, not only for bulk migrations. An empty value falls back to the new auto default, which preserves backwards-compatibility with older nodes in a mixed-version cluster.
featureMake several improvements to the task viewer:
featureAdd a Download button to download a task log directly without opening the full task viewer popup (issue 7087).
featureDerive the task end-time from the polled task status if the caller did not provide it, ensuring finished tasks show the correct duration.
featureMake various improvements to the login flow:
featurePreserve deep-link fragments (e.g. /#vNNN) across an OpenID Connect login to make users land on the requested resource (issue 7337).
featurePrevent the realm selection from being changed on the login page as a side-effect of unrelated user creation (issue 7149).
featureReset the UI state on automatic logout to protect users who share a workstation.
featureAllow creating snapshots and backups directly from the resource tree context menu (issue 6209).
featureImprove the rendering of nested pools in the resource view by grouping the child pools under their parent pool.
featureAdd an architecture column to the resource store, enabling other views to display the architecture of a node.
featureFix the OSD toolbar overflowing on narrow viewports.
featureFix the CephFS page not being scrollable when multiple MDS are configured (issue 6234).
featureFix sorting of the Two-Factor Authentication (TFA) column in the datacenter, permission, and user grids (issue 7191).
featureFix the network section being unavailable in the folder view (issue 7125).
featureImprove the "Confirm Remove" dialog layout to properly accommodate larger fields and components.
featureAllow creating network bonds without specifying the bond-primary option to match the backend, which treats the value as optional (issue 4911).
featureUse the correct IANA timezone name Europe/Kyiv in the timezone selector (issue 7141).
featureSmaller fixes and improvements:
featureFix parsing of property strings whose values contain an equals sign.
featureTrim trailing whitespace from custom filenames when downloading ISOs, so the file extension is recognized correctly.
featureInclude Linux Kernel 7.x in the version range for the VM OS selector.
featureFix a typo in a translated OVMF-related error message.
securityFix a boot issue for Windows guests with Virtualization-based Security (VBS) enabled by disabling the cet-ibt and cet-ss CPU flags.
deprecatedSwitch from the deprecated block-job-complete to the newer job-complete QMP command.
breakingRemove redundant checks for USB hotplug support and unplug events during unrelated VM configuration changes.
deprecatedDeprecate and warn about raw cgroup v1 entries in the container configuration. The support for cgroup v1 will be removed in a future release.
securityPrevent local "copy.fail" privilege escalation exploit via AF_ALG sockets within containers by using seccomp filtering (PSA-2026-00018-1). If AF_ALG support is required in a specific container, see the security advisory forum post for more details.
deprecatedSwitch from the deprecated /etc/timezone to the recommended timedatectl to initialize the containers timezone setting (issue 7175).
deprecatedDeprecate the legacy starttime and dow parameters of the backup job API in favor of schedule. The legacy parameters were superseded by schedule since Proxmox VE 7.1 and have now been removed from the API response.
breakingWindows VMs using machine versions 11.0 or 11.0+pve1 are potentially affected by this issue. Such guests may have been created with the packages available in the Proxmox VE 9.2 ISO or qemu-server older than 9.2.0. Upgrading the qemu-server package and setting the machine version to 11.0+pve2 or…
breakingWindows VMs using machine version 11.0+pve2 or newer are not affected by this issue. Under qemu-server 9.2.0 or later, new Windows VMs are created with an unaffected machine version.
breakingWindows VMs using machine versions older than 11.0 are not affected if using qemu-server 9.2.0 or newer.
+143 more items in the release notes9.1.19 May 20, 2026
otherui: sdn: fabrics: wireguard: present the endpoint port as a separate field in the node edit window, defaulting to the standard WireGuard port 51820, rather than expecting a host:port value in a single endpoint field.
fixui: sdn: fabrics: fix an error when adding a route redistribution rule.
9.1.18 May 19, 2026
otherui: VM CPU flag editor: present the active acceleration as a 'Showing flags for KVM/TCG' label in the flag grid's bottom toolbar, replacing the permanently-visible hint that previously sat below the grid. Also fix scrolling glitches that could leave rows partially rendered, and make the CPU flags…
othercustom CPU models: reject create and edit requests that omit the base reported model, which is structurally required.
otherui: ceph osd: show the dm-crypt encryption status in the OSD details modal; the underlying OSD details endpoint now reports it too.
fixapi: ceph fs: expose the CLI handler for destroying a CephFS also a REST endpoint. Currently this still not exposed in the web UI. Also return all data pools and pool IDs in the filesystem listing, and fix a parameter name on the early add-storage check during create.
fixapi: ceph: broad return-schema correctness pass across the OSD, pool, monitor, manager, MDS, configuration, and node indexes: emit real JSON booleans for flags previously rendered as strings, declare missing return fields with property descriptions, drop a dead duplicated permissions key, omit the…
otherui: sdn: vnet edit: mark the tag field as required for zones that need it, disable rather than hide fields that do not apply for the chosen zone type, and explicitly delete fields that are no longer applicable upon submission.
fixui: sdn: route map and prefix list edit: fix alignment of value cells in the add/edit dialog, use a more consistent style for the match/set grid, make ID and order required, and add online help links.
fixsdn: fabrics: fix populating the WireGuard node 'Allowed IPs' field from existing config.
fixui: lxc create wizard: fix recent regression with the default rootfs disk being missing on fresh wizard opens.
otherui: wizard: increase wizard dimensions from 720x540 to 760x570 to give denser panels like the CPU flag list editor more room while keeping the 4:3 ratio.
otherui: datacenter menu: drop the 'guest resource' grouping and clean up the item list.
featureui: ceph wizard: drop the preview marker for Ceph Tentacle, it's the new stable default.
otherpve8to9: avoid logging a failure when the old kernel metapackages are no longer installed.
9.1.17 May 18, 2026
othernetwork-interface-pinning: write '.link' files with the product-neutral '50-pmx-' prefix and remove legacy '50-pve-' siblings on write, so they no longer collide with installer-written entries.
9.1.16 May 18, 2026
fixfix #6819: storage content view: handle the new 'approximate-size' field returned for inactive qcow2 LVs on LVM by rendering them with a leading '~' marker in the Size column, falling back to 'Unknown' when neither exact nor approximate size is set. Size column sorting remains numeric.
fixpve8to9: accept Proxmox kernels 7.0 and 6.17 as suitable in the upgraded-host checks, matching the default kernel switch in PVE 9.1 (6.17) and the upcoming switch to 7.0. Also fix the X.Y-pve fallback comparison that wrongly rejected 7.0-pve, and reduce noise from per-candidate not-installed probes.
featureui: sdn: improve UX for the wireguard interface dialogs: skip the delete-confirmation prompt for not-yet-saved entries, avoid a brief flicker when opening dialogs, and improve the empty state of the node-edit dialog when no interfaces have been added yet.
featureui: sdn fabric: add onlineHelp links to the node-edit dialogs.
featureui: sdn: route map panel: add 'tag' as a match statement, accepting integer tag values from 0 (matching untagged routes) up to 2^32-1, in line with FRR's 'match tag' clause.
otherd/control: depend on proxmox-enterprise-support-keyring to ensure the Proxmox support keyrings are available (in deactivated state) on PVE installations.
9.1.15 May 18, 2026
featureui: cpu models: add a new Datacenter > Custom CPU Models panel for cluster-wide CRUD of custom CPU model definitions: base model, vendor, physical address bits, hide-hypervisor, Hyper-V vendor ID, and per-flag toggles. Access is gated by Mapping.{Audit,Use,Modify} on /mapping/cpu/; assigning a…
featureui: cpu flags: add a flag editor grid used by both the new custom CPU model dialog (full view, with free-text search over name and description, an accel kvm/tcg selector, and a per-node multi-select filter) and the VM Processor edit dialog (restricted to the flags that may be set per VM). Flags…
featureui: vm processor edit: list custom CPU models alongside built-ins in the type selector, allow filtering out PVE-internal abstract profiles (x86-64-v2/v3/v4/v2-AES), and align the custom-CPU permission warning with the new Mapping ACL.
otherapi: capabilities: advertise the qemu/cpu-flags subroute in the qemu capabilities index so pvesh and other tree-walkers see it.
featureui: sdn: add support for the new BGP fabric protocol, configuring eBGP unnumbered peering with per-node ASN, optional BFD, prefix-list route filters, route maps, and redistribution. The interface panel omits the IP column since unnumbered interfaces carry no IPs.
otherui: ha: crs: auto-load the auto-rebalance settings dialog when opened from the HA status panel; previously it opened with blank fields and a Save would have overwritten the live config. Also display the hold- duration default via defaultText to match the other fields.
fixfix #7599: ui: vm create wizard: defer the first disk addition until the initial nodename is set, so adding a second CD-ROM drive for Windows virtio drivers correctly switches the disk controller from IDE to SCSI.
fixfix #3936: ui: storage: zfs: validate the blocksize field at form-edit time, enforcing a power-of-two between 512 bytes and 16 MiB with an optional 'k' or 'm' suffix.
9.1.14 May 16, 2026
fixfix #5076: ui: dc: add an optional 'audiences' field for OpenID realms, allowing the additional OIDC audiences a token may carry to be accepted.
othersdn: wireguard: stop disabling the name field when creating an external node, which had blocked external WireGuard node creation entirely.
othernetwork: drop the apply flag when generating the WireGuard config, avoiding an error when applying a configuration with newly created interfaces.
fixsdn: wireguard: fix rendering the peer list in Chromium-based browsers, which previously only worked in Firefox due to a race between setting available and selected peers.
featureui: ha: configure the CRS auto-rebalance imbalance threshold and minimum improvement margin in percent (0-100) to match the percent representation already used in the HA panel status. NOTE: previously configured fractional values must be multiplied by 100 to keep the same behavior; this only…
featureui: ha: add a CRS Settings shortcut button to the HA panel toolbar that opens the existing scheduling settings dialog directly, to improve discoverability without duplicating the settings tree.
9.1.13 May 15, 2026
otherapi: hardware: pci: use NVML for querying mediated device information on NVIDIA GPUs, exposing details that the standard sysfs mdev interface does not surface.
featurenode config: add an optional 'location' property holding a name and a latitude/longitude pair, settable per node. Lets management systems like Proxmox Datacenter Manager query and display a host's geographic position, for example on a world map, with per-node overrides on top of the cluster-wide…
featureui: expose the new 'Location' option in both the datacenter and node option views, using the location edit widget and renderer from the widget toolkit.
featureui: ha: resources: add an 'Auto-Rebalance' per-resource flag (default on) that controls whether an HA resource may be migrated during automatic rebalancing, with a matching grid column and status entry.
fixfix ui: sdn: evpn and bgp controller: do not send empty 'route-map-in' or 'route-map-out' values on create, which previously made creating a BGP or EVPN controller without any route map fail.
otherceph: switch the default release for fresh installs from Squid (19.2) to Tentacle (20.2) and drop its experimental gating. Existing clusters are unaffected, as the install wizard's cluster-version probe overrides the default with whatever release the cluster already runs; only the pre-selection on…
othersubscription: adapt to multiple server ID candidates: reuse an existing recorded server ID if it still matches one of the candidates, otherwise fall back to the first candidate. Keeps subscription handling working on hosts where the server ID identification can produce more than one value.
featuretighten qemu-server to >= 9.1.11 for the improved mdev support, libpve-rs-perl to >= 0.14.0 for the new subscription server-ID handling, proxmox-widget-toolkit to >= 5.2.1 for the location edit widget and renderer, and libpve-network-perl and libpve-network-api-perl to >= 1.5.1.
9.1.12 May 15, 2026
breakingui: sdn: fabrics: add management UI for the new WireGuard fabric protocol. New panels under Datacenter > SDN > Fabrics let users create and edit WireGuard interfaces with their peer references on internal nodes, manage external peer definitions, and review per-node available peers. Public keys,…
featureui: sdn: fabrics: ospf: add a per-interface network-type selector (Broadcast, NonBroadcast, PointToPoint, PointToMultipoint), exposing the new fabric API field. Previously the network type was inferred implicitly from whether the interface had an IP, leaving users no way to override it.
featureui: sdn: fabrics: ospf: add a redistribution grid for importing routes from other protocols (connected, kernel, static, ...) into OSPF, with a route-map selector per source.
featureui: sdn: evpn: zone and controller: expose new advanced fields (peer-group-name, nodes, BGP mode, eBGP multihop on the controller; additional controllers on the zone) to the UI.
otherui: always load SDN navigation entries. Previously they were hidden behind a tech-preview gate that rejected the dynamic feature probe when any optional SDN module was not yet available on the cluster, which has not been the intended behaviour for a while now.
fixui: fix parsing of property-strings when values contain an equals sign. The previous logic relied on String.split's limit parameter, which silently truncated values rather than stopping the split, so base64-padded values and similar got cut off at the first =.
othernetwork: sdn: trigger WireGuard config generation on apply, which emits per-interface configuration into /etc/wireguard/proxmox and syncs running interfaces via wg(8) syncconf if wireguard-tools is installed.
featureui: lxc: mountpoint edit: expose the new idmap option for mapping user/group IDs on a per-mountpoint basis, and drop a duplicate mp assignment in the same panel.
featureui: ha: add a button on a HA-managed guest's resource grid to disarm/re-arm it without removing the HA configuration, useful for temporarily skipping HA management during maintenance.
otherui: migrate: display the precondition messages for HA node-affinity rules when they constrain the migration target, so users see why a specific node cannot be picked.
otherui: sdn: title-case existing button and field labels for consistency with the rest of the UI.
featuretighten libpve-network-perl and libpve-network-api-perl dependencies to 1.5.0 and pve-container to 6.1.6 for the new WireGuard fabric, the OSPF redistribute and network-type API surface, and the LXC idmap option.
9.1.11 May 12, 2026
featureui: sdn: introduce management UI for the new prefix list and route map configuration entities. Adds dedicated panels under Datacenter > SDN for creating, editing, and removing prefix lists and route map entries, with explicit sequence numbers for prefix list entries and full match/set/exit-action…
featureui: qemu: wizard: re-add media=cdrom for the optional second VirtIO drivers ISO. The recent OS-type panel split lost the onGetValues hook that appended this on creation, which made adding the secondary ISO fail for Windows guests.
featureui: add default pgettext() and npgettext() implementations to the index template, avoiding UI breakage when no language file has been loaded yet. These functions are required for the context-aware translations support recently added to the proxmox-i18n tooling.
9.1.9 Apr 21, 2026
otherui: ha: status: handle the 'fencing' entry when ordering the grid, so it no longer bounces around between API requests on some browsers. Place it directly after 'quorum' for quick visibility.
fixapi: apt package versions: fix typo in libpve-notify-perl package name, which caused the package to be missing from the versions list.
fixfix #6234: ui: ceph: make the CephFS page scrollable along the Y-axis, so entries stay reachable on clusters with multiple MDS.
otherapi: vnc/termproxy: bind VNC and SPICE tickets to the listen port to harden authentication for interactive console sessions.
otherapi: vncproxy: always use a freshly generated password when authenticating via the VNC protocol, improving entropy compared to the previous ticket-derived scheme.
otherapi: termproxy: pin the accepted ticket in the spawned termproxy process as an additional defense-in-depth measure.
featuresdn: add a dry-run diff view to the SDN apply action, showing the upcoming FRR and ifupdown2 configuration changes before the user commits them.
otherupdate shipped appliance info index.
9.1.8 Apr 2, 2026
featureui: datacenter options: add dynamic load scheduler and auto rebalancing configuration for HA cluster resource scheduling, including threshold, hold duration, margin, and method settings.
deprecatedapi: backup: deprecate the legacy 'starttime' and 'dow' parameters in favor of 'schedule' and drop them from the API response, as they have been superseded since PVE 7.1.
featureapi: backup: add return schema for backup job endpoints.
othersystem report: adapt to ZFS 2.4.0 renaming arcstat to zarcstat.
9.1.7 Mar 27, 2026
otherui: qga: rename freeze-fs-on-backup checkbox to freeze-fs, reflecting that filesystem freeze/thaw now also applies to snapshots and replication, not just backups.
otherui: qemu: hardware: efi: suggest enrolling UEFI 2023 certificates from Microsoft when pre-enrolled keys are present but the 2023 certs are missing, as the 2011 certificates expire mid-2026.
deprecatedfix #7175: replace deprecated /etc/timezone handling with systemd timedatectl.
fixfix #7337: ui: preserve deep link hash on OpenID login redirect, so users are directed to the intended page after authentication.
fixceph: osd: fix bootstrap keyring creation when auth_client_required is not set in ceph.conf, defaulting to 'cephx' to match Ceph's own default.
fixfix #7011: ceph monitor: set ownership of monitor logs to ceph:ceph after creation, so logging works on freshly set up clusters without waiting for a ceph-common upgrade.
fixfix #7386: ui: vm memory: fix compatibility with Firefox ESR 115 by avoiding ES2025 Iterator.toArray, as we target ES2024 for the Trixie based releases.
fixfix #7191: ui: correctly sort TFA column in the PVE user list.
featureapi: cluster resources: add missing 'shared'-storage flag to return schema, required by the proxmox-datacenter backend.
otherui: download iso: trim filename to correctly detect file extension when a custom filename has trailing spaces.
fixui: ceph: fix pool edit dialog sometimes showing incorrect size and min_size values due to a race condition, which could lead to unintended replication setting changes on save.
fixui: ceph: osd: fix toolbar overflow on small screens by enabling horizontal scrolling.
fixfix #7300: ui: acl: include pre-generated SDN zones and fabrics in the permission path selector.
9.1.6 Feb 12, 2026
featureui: lxc/MPEdit: add "keepattrs" flag