right now I use a managed NextCloud, which is terrible slow. Thus I set up a home server successfully. The problem I’m facing now is how to transfer all the data from the managed NextCloud server to my home server. On the managed server I only have access to the NextCloud front-end, so no access to the command line, or the database running in the background. I need to transfer at least my main account with all it’s photos, files, contacts, tasks and calenders. At best I would also like to do a backup before the migration. I did not find a solution to this problem in the documentation, that’s applicable without access to the command line on the managed server.
What’s the best way to do handle this?
a backup and migration of a server consists of two parts: files and database. in the database Nextcloud stores data like user rights, group memberships, shares and so on… if you can live without this data you can
- create all you users on the local server
- copy the files from old server to the new server (into corresponding user directory)
- run occ files:scan
after a while all files should appear in the web UI/client/WebDAV.
If you need database content as well, there is no way as to request a database backup from your current hoster and perform a restore into your local server…
Yes @wwe is right.
If you want to download all data (not structure) i think the best tool is the nextcloud client on Windows, MacOS and/or Linux. https://nextcloud.com/install/# (klick Download for Desktop).
Then you can add a new nextcloud server (e.g. at home) and re-upload.
You can buy a VPS or a Managed Nextcloud with shell access, more performance and backup.
How much do you pay? Which country?
Does the migration method via desktop app also work for contacts, tasks and calender? Or only files and photos?
I have used Cloudamo for around 3 or 4€ per month.
I’m still a bit unsure whether home server is the best solution, since this is the first time for me. Especially security wise, I don’t want my home network or data to get compromised.
The home server uses Proxmox as a hypervisor with TurnkeyLinux Nextcloud LXC and a SSL certificate from lets encrypt. I did port forwarding only for ports 80 and 443 on my router to the NextCloud server container and got a A+ rating on the NextCloud test page.
But since I’m no expert in self hosting, I am not sure if this is enough, or if there still could be hidden security problems. I have so many questions and find sometimes contradicting answers to my questions. Just to mention a few:
- Are there additional test pages or programs to check the safety of my solution?
- Are there other things I could do to harden this setup?
- Is using a VM instead of a LXC significantly more secure?
- I have no Selinux enabled. How much more secure does enabling it make it?
Another consideration is creating backups. I don’t have a automatic solution in place right now for the home server. Maybe I should use another LXC container running on the same home server with a backup software and backing up the NextCloud instance two times a week to a different hard drive. But what happens if there was a fire in my apartment?
The third point is money, since energy prices in Germany are the highest of all developed countries for private use. I use a passively cooled low energy 4 core + 8 GB RAM solution, but it may still be more expensive than using a VPS or managed NextCloud.
Originally, I also imagined running a media server container on that server and something like Adguard Home or Pihole. But since setting up the NextCloud container was more difficult than expected and I realized, that I know some things about desktop computers, but very little about servers and networks, I am not sure if I will go that route.
What are your views on this?
I don’t have an answer for all your questions, but no, the desktop client does not work for syncing tasks/events/contacts to a different nextcloud instance. The client is files only. It provides notifications for other applications, but does not sync any data.
My preferred migration method is to sync the tasks/events/contacts to a different client that supports CalDAV (like MacOS Reminders/Calendar/AddressBook), then setup your new instance and update your client account information to sync your tasks/events/contacts to your new instance. Be sure to take a backup of your local Tasks/Events/Contacts before syncing to the new instance because it has happened on more than one occasion where all my local items are erased during the sync! A safer option may be to just download the events/tasks/contacts from your old nextcloud instance and then import to your new one (i think all the apps provide export options).