https://github.com/BassT23/Proxmox
Update your Proxmox VE
https://github.com/BassT23/Proxmox
iobroker proxmox proxmox-ve update upgrade
Last synced: over 1 year ago
JSON representation
Update your Proxmox VE
- Host: GitHub
- URL: https://github.com/BassT23/Proxmox
- Owner: BassT23
- License: other
- Created: 2023-01-22T11:15:58.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2025-03-07T11:37:27.000Z (over 1 year ago)
- Last Synced: 2025-03-07T12:29:05.302Z (over 1 year ago)
- Topics: iobroker, proxmox, proxmox-ve, update, upgrade
- Language: Shell
- Homepage:
- Size: 2.03 MB
- Stars: 244
- Watchers: 4
- Forks: 15
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: change.log
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README


[](https://GitHub.com/BassT23/Proxmox/releases/)
[](https://github.com/BassT23/Proxmox/stargazers)
[](https://github.com/BassT23/Proxmox/releases)
[](https://discord.gg/nVpUg6BKn8)
Proxmox® is a registered trademark of Proxmox Server Solutions GmbH.
I am no member of the Proxmox Server Solutions GmbH. This is not an official program from Proxmox!
> This is distributed in the hope that it will be useful, but
> WITHOUT ANY WARRANTY; without even the implied warranty of
> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> See the GNU General Public License for more details.
**IN CASE OF EMERGENCY, I HOPE YOU HAVE BACKUPS FROM YOUR MACHINES!**
**YOU HAVE BEEN WARNED!**
### What does the script do:
- The script makes system updates with apt/dnf/pacman/apk or yum on all nodes/LXCs and VMs (if VMs prepared for that)
- Make a snapshot before update (if your storage support it - [look here](https://pve.proxmox.com/wiki/Storage)). If not supported, you can choose to make a real backup, but this must be enabled in `update.conf` by user (take long time!)
- After all, the updater makes a little cleaning (like `apt autoremove`)
- If the script detects "extra" installations, it could update this also. Look in config file, for that.
### Features:
- Update Proxmox VE (the host / all cluster nodes / all included LXCs and VMs)
- Snapshot / Backup support (for Snapshot, your system must prepared for it)
- Normal run is "Interactive" / Headless Mode can be run with `update -s`
- Logging - location can be change in config file
- Exit tracking, so you can send additional commands for finish or failure (edit files in `/etc/ultimate-updater/exit`)
- [Config file](https://github.com/BassT23/Proxmox/tree/master#config-file)
- Trim filesystem on ext4 nodes -
Info can be found with `update -h`
Changelog: [here](https://github.com/BassT23/Proxmox/blob/master/change.log)
##
# Installation:
In Proxmox GUI Host Shell or as root on proxmox host terminal:
```
bash <(curl -s https://raw.githubusercontent.com/BassT23/Proxmox/master/install.sh)
```
# Usage:
- If you want to run the updater globally for all nodes/lxc/vm only run `update`
- If you want to update only one specific lxc/vm run `update `
##
## Cluster-Mode preparation:
**! For Cluster Installation, you only need to install on one Host !**
The nodes need to know each other. For that please edit the `/etc/hosts` file on each node. Otherwise, you can use the GUI. (NODE -> System -> Hosts)
Example add:
```
192.168.1.10 pve1
192.168.1.11 pve2
192.168.1.12 pve3
...
```
IP and Name must match with node ip and its hostname.
- IP can be found in node terminal with `hostname -I`
- hostname can be found in node terminal with `hostname`
After that make the fingerprints.
The used sequence can be check, if you run `awk '/ring0_addr/{print $2}' "/etc/corosync/corosync.conf"` from the host, on which Proxmox-Updater is installed.
So connect from first node (on which you install the Proxmox-Updater) to node2 with `ssh pve2`. Then from node2 `ssh pve3`, and so on.
## If you want to update the VMs also, you have two choices:
1. Use the "light and easy" QEMU option
more infos here: [QEMU Guest Agent](https://pve.proxmox.com/wiki/Qemu-guest-agent)
2. Use ssh connection with Key-Based Authentication (a little more work, but nicer output and "extra" support)
more infos here: [SSH Connection](https://github.com/BassT23/Proxmox/blob/master/ssh.md)
# Update the script:
`update -up`
If update run into issue, please remove first with:
```
bash <(curl -s https://raw.githubusercontent.com/BassT23/Proxmox/master/install.sh) uninstall
```
and install new
# Extra Updates:
If updater detects installation: (disable, if you want in `/etc/ultimate-updater/update.conf`)
- PiHole
- ioBroker
- Pterodactyl
- Octoprint
- Docker Compose (v1 and v2)
# Config File:
The config file is stored under `/etc/ultimate-updater/update.conf`
With this file, you can manage the updater. For example; if you don't want to update PiHole, comment the line out with #, or change `true` to `false`.
- Host / LXC / VM
- Headless Mode
- Extra updates
- "stopped" or "running" LXC/VM
- "only" or "exclude" LXC/VM by ID
# Welcome Screen:
The Welcome Screen is an extra for you. It's optional!
- The Welcome-Screen brings an update-checker with it. It check on 07am and 07pm for updates via crontab. The result will show up in Welcome-Screen (Only if updates are available).
- The update-checker also uses the config file!
- To force the check, you can run `/etc/ultimate-updater/check-updates.sh` in Terminal.
- You can choose, if neofetch will be show also (if neofetch is not installed, script will make it automatically)
# Beta Testing:
If anybody wants to help with failure search, please test our beta (if available).
Install beta update with `update beta -up`
To go back to master, choose `update -up`
# Q&A:
[Discussion](https://github.com/BassT23/Proxmox/discussions/60)
# Support:
[](https://ko-fi.com/basst)
# Contributors: