How do I roll back an update?
Roll back as root with cd /opt/backupwall && .venv/bin/python -m app.updates rollback. It puts the previous program files back and keeps the current database. A failed update rolls back by itself.
Automatic rollback
If a new version does not come up healthy after an update, or a database change fails, the updater puts the previous version and the pre-update database copy back by itself. That release is marked failed on this server and is not tried again until you approve it again.
Roll back yourself
Run as root:
cd /opt/backupwall && .venv/bin/python -m app.updates rollback
- This puts the previous program files back and keeps the database as it is. Database changes are additive, so the old code runs on the migrated database.
--restore-dbalso puts back the pre-update database copy. That loses everything written since the update. Use it only if you must.- Only one previous release is kept.
- Rollback is a root command with no button; the Settings → Software updates page shows the exact command.
python -m app.updates statusshows the policy, the offer and the last outcome.
Going back after a manual upgrade
There is no rollback tool for an upgrade done with install.sh. The old program files are kept in /opt/backupwall/.upgrade-backup-<time> (the last five), and before it applies a database change the API saves a copy as backupwall.db.premigrate-<time> (the last five). Going back to the old database means going back to the state of that copy: jobs, destinations and backup points made since are not in it. Some builds carry extra caveats; read UPGRADING.md in the release folder first. Going back to v276 or older switches licensing and updates off again.