Do I need to keep "raw" access to files? Or just commit to NextCloud

Not sure if this belongs in Support or not, so I’m starting here. Please move if needed!

I’m looking for some advice, and maybe I need my mind changed about how I view Nextloud. I’m a home user running Nextcloud in a VM ( The Hansson IT VM) on my AMD-based NAS. It’s got a little bit of power, but it’s not a Ryzen 3 or anything like that.

When I first setup Nextcloud, I wasn’t committed to it. So, I used an NFS mount inside the VM as the data directory. The NAS provides this NFS share. I don’t interact with the files except thru Nextcloud. But, I do backup this directory on the NAS using my regular backup procedure. I had some peace of mind that if I tore down the Nextcloud instance, I could pretty easily recreate the directory structure natively back on the NAS host, ditching the Nextcloud specific parts.

It’s been a year. I’m convinced I’ll continue to use Nextcloud, but the idea of not having “raw” access these files still bugs me. I’m not entirely sure why, so I thought I would talk this through and get feedback.

  • I don’t need “interactive” access to the files outside of Nextcloud, but I do like the idea of just having a directory of files if things go sideways because I know I could always recreate things from there.

  • I really like the idea of being able to backup the actual data files and folder structure using my existing backup solution, which is Duplicati talking to an S3-like object store.

  • Using NFS from the VM back to the host must have some perf overhead. It’s also another point of failure, but the NFS mount is done in fstab on the VM, so it boots or it doesn’t.

  • I’m using Nextcloud for mostly smaller documents, for a total of about 17GB, but I have started relying on it for larger things and sharing with others outside the house. As this set grows, I guess I just keep growing the VM’s data (2nd) disk? Is it possible to get Nexcloud to store things across different filesystems or do I need to do this under Nextcloud in the OS with LVM or similar?

  • What are my options for backup? I’d need to get regular backups out of the VM so my NAS’ Duplicati jobs can pick it up. It would be ideal if this isn’t just an opaque ball like a VM snapshot.

  • Is there some sort of file export? From Nextcloud? Something that gives just the raw data?

  • If I do stay with the data dir on a file share, what are the best practices for this?

If you use Hansson’s VM it uses a separate disk for the Nextcloud data and this disk is under ZFS.
You can extend the disk but it is not the same as with other file systems…

I believe this is the right setup (separate data disk), whether it is NFS mounted or local.

I use few NC instances, all VMs, on vSphere and QNAP (Ubuntu VM).
Backups are done by Veeam, directly or using agents…

Thanks for the reply, I’m familiar with Veeam from a previous job. I’m happy with Duplicati as my backup solution, but I just don’t know how to give it access to the file store from the host.

Re: ZFS. Ahh! I should have looked. Ok, so I could either grown the data disk manually and resize ZFS, or I could add virtual disks as vdevs as I fill up space.

But my core point, does anyone else worry about not having “raw” access to the files inside a Nextcloud instance? I don’t mean it in the interactive sense, but if you ever wanted to migrate out of Nextcloud or the something was unrecoverable.

I don’t, really.
Between regular backups and separate disk for data, I think the data safety issue is covered.

If one day - for whatever reason - your Linux system does not boot, simply mound the other (data) disk on a different Linux box and extract the data…

How do folks typically backup Nextcloud and the data dir when using the Hansson IT VM? I’m aware of the various backup scripts and instructions in the manual. But I’m asking more about how to handle the files resulting from the backup.

Right now, I’m thinking I will reverse the NFS share. So the files live natively in the VM, but share a folder from the VM that contains the data dir and the results of the db backup and such.

The latest Veeam v.10 has a free Community Edition that allows backup of up to 10 VMs.
That’s what I use…