Nextcloud version (eg, 29.0.5): 28.0.7
Operating system and version (eg, Ubuntu 29.04): Arch Linux
Apache or nginx version (eg, Apache 2.4.25): Apache/2.4.59 (Unix)
PHP version (eg, 8.3): 8.1.27 (I think, I’m in a weird spot where I have two versions of PHP installed, and with Nextcloud currently broken I’m a little stuck how to figure out which one is being used. The other version is 8.2.9.)
The issue you are facing:
I keep getting Error 500 Gateway Timed Out messages when updating using the web GUI. It finally gave up the ghost on the Deleting Files step of the update, and now I can’t get it to finish, even using the command line updater. The occ file is missing.
I’m wondering if I need to do a manual update, but I’m a little hesitant, since I think it’s not unlikely that I’d mess something up in doing that. I see there is a folder under nextcloud/data/updater-<UUID-like string>/backups
I am happy to provide logs, etc, as needed. I not sure what would be useful, and didn’t want to try to go through and redact all my logs if they aren’t going to be helpful. Reply and let me know if there is a resource missing that you’d like to see, and I’ll happily provide it.
During the Deleting Files step, it threw some sort of an error, which I didn’t expand out in the web interface to see the details of. I had been having issues with PHP timeouts, and I assume that that was the issue, but it usually recovers nicely from those errors.
Updating at the terminal goes like this:
Nextcloud Updater - version: v28.0.5-1-g9595edb dirty
Current version is 28.0.7.
Update to Nextcloud 28.0.8 available. (channel: "stable")
Following file will be downloaded automatically: https://download.nextcloud.com/server/releases/nextcloud-28.0.8.zip
Open changelog ↗
Steps that will be executed:
[ ] Check for expected files
[ ] Check for write permissions
[ ] Create backup
[ ] Downloading
[ ] Verify integrity
[ ] Extracting
[ ] Enable maintenance mode
[ ] Replace entry points
[ ] Delete old files
[ ] Move new files in place
[ ] Done
Start update? [y/N] y
Info: Pressing Ctrl-C will finish the currently running step and then stops the updater.
[✔] Check for expected files
[✔] Check for write permissions
[✔] Create backup
[✔] Downloading
[✔] Verify integrity
[ ] Extracting ...PHP Warning: require(/srv/nextcloud/updater/../version.php): Failed to open stream: No such file or directory in phar:///srv/nextcloud/updater/updater.phar/lib/Updater.php on line 694
PHP Fatal error: Uncaught Error: Failed opening required '/srv/nextcloud/updater/../version.php' (include_path='.:') in phar:///srv/nextcloud/updater/updater.phar/lib/Updater.php:694
Stack trace:
#0 phar:///srv/nextcloud/updater/updater.phar/lib/Updater.php(732): NC\Updater\Updater->getVersionByVersionFile()
#1 phar:///srv/nextcloud/updater/updater.phar/lib/UpdateCommand.php(384): NC\Updater\Updater->extractDownload()
#2 phar:///srv/nextcloud/updater/updater.phar/lib/UpdateCommand.php(237): NC\Updater\UpdateCommand->executeStep()
#3 phar:///srv/nextcloud/updater/updater.phar/vendor/symfony/console/Command/Command.php(255): NC\Updater\UpdateCommand->execute()
#4 phar:///srv/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(1021): Symfony\Component\Console\Command\Command->run()
#5 phar:///srv/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(275): Symfony\Component\Console\Application->doRunCommand()
#6 phar:///srv/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun()
#7 phar:///srv/nextcloud/updater/updater.phar/updater.php(10): Symfony\Component\Console\Application->run()
#8 /srv/nextcloud/updater/updater.phar(14): require('...')
#9 {main}
thrown in phar:///srv/nextcloud/updater/updater.phar/lib/Updater.php on line 694
My original installation method is a little lost to time… if I recall correctly, this was an OwnCloud instance back in the early 2010s, was migrated to Nextcloud, and then moved from a Debian server over to my current Arch system maybe a year or so ago. I have successfully done updates before – a big string of them when I moved to Arch, and then maybe one or two since then. I usually use the web updater, but during the server transfer I learned how to use the command line updater.
Do you have the updater.log contents from the original failure? The log entries you posted appear to only be from today’s run.
Since the original failure was somewhere in the deleteOldFiles() step, you’re old application code is already at least partially removed. So your version.php is going to be missing and further Updater runs won’t succeed.
Thanks for the help! I’m back up and running again — a manual update wasn’t as bad as I expected. (I wasn’t sure how that’d go, being mid-install like I was, and having never done one before…)
I wasn’t able to identify where in the log things broke with the web updater. I can pastebin it somewhere if you are curious to take a look, but my problem is solved.