Using Multiple ZFS Datasets

It works like a charm.

NAME                    USED  AVAIL  REFER  MOUNTPOINT
dsk                    1.33T  2.19T    96K  /mnt/dsk
dsk/backups            39.1G  2.19T  39.1G  /mnt/dsk/backups
dsk/nextcloud          25.3G  2.19T  21.6G  /mnt/dsk/nextcloud
dsk/nextcloud/preview  2.80G  2.19T  2.80G  /mnt/dsk/nextcloud/appdata_xxx/preview
dsk/services            336M  2.19T   320M  /mnt/dsk/services

In my configuration:

  • Nextcloud web server is a subdir of dsk/services dataset.
  • User data is stored in a dsk/nextcloud dataset.
  • Photo previews are in dsk/nextcloud/preview child dataset, it gives me an easy way to skip them in non-recursive ZFS snapshots.
  • Snapshots-as-files are in dsk/backups dataset to be encrypted and uploaded overnight to the public cloud storage.

The main thing to remember is the user and his group under which your webserver runs. All NextCloud directories and files must be owned by this user, see p. 11 in Manual Upgrade Procedure.

As for the external storages available in NextCloud, the administrator configures access for all users, and each user can configure individual access, see Configuring External Storage (GUI).

1 Like