Catastrophic Nextcloud Upgrade
I neglected by Nextcloud installation so much that I found myself in 2024 running Ubuntu 18.04 LTS, PHP 7.2, and Nextcloud 20. All the upgrade windows came and went and I blissfully continued running an incredibly insecure installation. Last night I came to my senses and ran the do-release-upgrade command twice, from 18.04 to 20.04 and then to 22.04 LTS. Everything mostly worked like a charm and the server came back online.
When I tried to use Nextcloud though, it told me that I was completely out of luck because I was running a version of PHP that was too new. (8.1)
I looked around online to see if there was something I could do and a lot of the advice that I got was to downgrade my PHP version which is basically the last thing I ever want to do. The idea was to downgrade PHP, upgrade Nextcloud, and then upgrade PHP.
I also saw a bunch of people saying “just run it in Docker” and I wish I had. I tried, to be honest, but found both the “all in one” container and the docker-compose file to be so confusing. I was not able to get it to work.
In the end, I did what any desperate NUC user would do, and installed a fresh copy of Nextcloud while manually moving all of my files from the previous installation to their right location. I think this would be a complete nightmare for an installation of Nextcloud that has more than a handful of users in it, but for my purposes it did the trick.
This procedure was pretty painless. Be careful though, you may lose all of your stuff if you type in the wrong order, be sure to make a backup before doing this type of directory surgery.
# Remove the new files directory of your new installation
sudo rm $NEW_NEXTCLOUD_DATA_DIRECTORY/$USER/files
# If you are not sure where your Nextcloud Data Directory is,
# check out the /var/www/nextcloud/config/config.php file
sudo mv $OLD_NEXTCLOUD_DATA_DIRECTORY/$USER/files \
$NEW_NEXTCLOUD_DATA_DIRECTORY/$USER/files
# the occ utility is inside of your nextcloud installation,
# probably around /var/www/nextlcoud
sudo -u www-data php occ files:scan --all
This took quite a bit of time to run but in the end everything is in the right place and I am am happily running the latest and greatest version of Nextcloud.
Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.
Check out some more stuff to read down below.
Most popular posts this month
- Great Lakes, Illinois
- My Custom Miniflux CSS Theme
- Are we inside a Sarlacc?
- Setting up ANTLR4 on Windows
- Microblog
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- Pluralistic: A perfect distillation of the social uselessness of finance (18 Dec 2025) from Pluralistic: Daily links from Cory Doctorow
- Moving from WordPress to Substack from charity.wtf
- Grow, Like a Tree Not a Cancer from Jim Nielsen’s Blog
- Pluralistic: All the books I reviewed in 2025 (02 Dec 2025) from Pluralistic: Daily links from Cory Doctorow
- DEP-18: A proposal for Git-based collaboration in Debian from Optimized by Otto
- [RIDGELINE] No Phones in The Ten-don Shop from Craig Mod — Writer + Photographer
- Open design: the opportunity design students didn’t know they were missing from Ubuntu blog
- My next chapter with Mastodon from Mastodon Blog
Articles from blogs I follow around the net
Sharing group_var variables across Ansible inventories
The problem Some time ago I worked with a customer that used Ansible to deploy a multitude of applications across their individual TAP1 environments. Unfortunately the Ansible inventory was setup in such a way that group_vars variables for a specific applic…
via Louwrentius December 20, 2025Thoughts on MCP
I was listening to a recent Vergecast episode the other day, and in there, there was a whole segment about MCP servers and AI-powered shopping. I’ll be honest, I’ve never been more confused about something tech-related. The more I read and listen …
via Manuel Moreale — Everything Feed December 20, 2025Generated by openring