But you will have to go that way. There is no alternative, among other things, because the database migration steps must be processed successively.
Look → here ← for explanation. Quote:
Nextcloud must be upgraded step by step:
- Before you can upgrade to the next major release, you need to upgrade to the latest point release of your current major version.
- Then run the upgrade again to upgrade to the next major release’s latest point release.
- You cannot skip major releases. Please re-run the upgrade until you have reached the highest available (or applicable) release.
- Example: 18.0.5 → 18.0.11 → 19.0.5 → 20.0.2
Wait for background migrations to finish after major upgrades. After upgrading to a new major version, some migrations are scheduled to run as a background job. If you plan to upgrade directly to another major version (e.g. 24 → 25 → 26) you need to make sure these migrations were executed before starting the next upgrade. To do so you should run the
cron.phpfile 2-3 times, for example:$ sudo -E -u www-data php -f /var/www/nextcloud/cron.php
You will need an “intermediate” debian (at least 11, bullseye, since 9, stretch, is obsolete since three years and 5 months already!)
In that intermediate debian, you can switch the php versions successively as supported by the different nextcloud versions.
You can do the php version switches with the → php-updater ← script.
But you can start directly with debian 13 (trixie), the current stable and install php8.0 (a piece of cake with the php-updater script). Then you can simply do the complete migrations steps on the future actual system.
h.t.h.
ernolf