Upgrade ProxmoxVE 7.4 to 8.0, detailed steps
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