中文 English

Upgrade ProxmoxVE 7.4 to 8.0, detailed steps

Published: 2023-07-08
PVE Proxmox VE

Step 1: Read the official documentation in detail

Notice: If you use ssh connection remotely, it is recommended to use the screen command first to avoid various problems caused by network instability and operation interruption.

Step 2: Upgrade to the latest version 7.4

The latest version is 7.4.15

apt update -y && apt dist-upgrade -y

sed -i_orig "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js
sed -i_orig "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
sed -i_orig "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy

pveversion

Step 3: Check if there are compatibility issues

pve7to8

Step 4: Back up and replace the Debian source

cp /etc/apt/sources.list /etc/apt/sources.list_bak
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list

Step 5: Back up and add PVE8 upgrade source

cp /etc/apt/sources.list.d/pve-install-repo.list /etc/apt/sources.list.d/pve-install-repo.list_bak
sed -i -e 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pve-install-repo.list

Step 6: CEPH required, omitted here

Step 7: Start the official upgrade

Some interactive interfaces will appear during the upgrade. The following are the suggestions from the official website.

apt update
apt dist-upgrade
/etc/issue -> Proxmox VE will auto-generate this file on boot, and it has only cosmetic effects on the login console.
Using the default "No" (keep your currently-installed version) is safe here.

/etc/lvm/lvm.conf -> Changes relevant for Proxmox VE will be updated, and a newer config version might be useful.
If you did not make extra changes yourself and are unsure it's suggested to choose "Yes" (install the package maintainer's version) here.

/etc/ssh/sshd_config -> If you have not changed this file manually, the only differences should be a replacement of ChallengeResponseAuthentication no with KbdInteractiveAuthentication no and some irrelevant changes in comments (lines starting with #).
If this is the case, both options are safe, though we would recommend installing the package maintainer's version in order to move away from the deprecated ChallengeResponseAuthentication option. If there are other changes, we suggest to inspect them closely and decide accordingly.

/etc/default/grub -> Here you may want to take special care, as this is normally only asked for if you changed it manually, e.g., for adding some kernel command line option.
It's recommended to check the difference for any relevant change, note that changes in comments (lines starting with #) are not relevant.
If unsure, we suggested to selected "No" (keep your currently-installed version)

Step 8: Remove the unsubscribed prompt

Q: Tip【Upgrade wants to remove package ‘proxmox-ve’】 A: Try executing [apt remove linux-image-amd64] before upgrading

sed -i_orig "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js
sed -i_orig "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
sed -i_orig "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy