this post was submitted on 15 Sep 2025
18 points (87.5% liked)

Selfhosted

62766 readers
996 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

I am trying to set up a home server. Here is how I'm planning to do it:

/dev/nvme0n1 SSD, Proxmox, VMs & CTs
/dev/sda HDD, Media library
/dev/sdb HDD, Backup

I've installed Proxmox on the NVMe SSD and created a few VMs and CTs to play with.

I have also partitioned /dev/sda and created a ZFS partition on /dev/sda1, made a pool /pool and a datastore /pool/data.

I plan to put media files on /pool/data, bind mount it on a container and run Jellyfin to serve them.

I can schedule backup jobs for the VMs and CTs themselves on Proxmox, but I'm not sure how to backup the media files on /pool/data to /dev/sdb.

  1. How would one go about setting up such backups? Do I need to setup something like a cronjob with rsync or is there some easier ready-made solution? Ideally it'd be something like Proxmox's VM backup jobs that let me prune and keep some copies daily / weekly / monthly / yearly.

  2. What filesystem should I use for the backup drive / partition? Is there advantage of using ZFS to backup ZFS?

  3. Can ZFS snapshots be used on /pool/data for additional protection? If so how do I set up, for example, automatic daily snapshots? Do snapshots take up little space if the files rarely change?

Thanks.

top 6 comments
sorted by: hot top controversial new old
[–] suicidaleggroll@lemmy.world 5 points 1 year ago

Don’t stick your backups on a drive that’s plugged into the same machine as the primary copy, it defeats almost the entire purpose of having a backup.

[–] ag10n@lemmy.world 2 points 1 year ago
[–] TieDyePie@lemmy.world 2 points 1 year ago

I use healthchecks.io to alert me if any backups dont fire on time or have error states, free to use and a nice first line when I can't keep an eye on it regularly

[–] marty_mcfly@piefed.social 2 points 1 year ago

Here is what I have on a cheap tower server:

  • Proxmox OS on mirrored zfs pool on two internal SSDs.
  • Data pool on mirrored zfs pool on two internal NVMEs.
  • Externally attached NVMe via usb3.1.

When I spin up VMs, they are on the internal NVMe zpool. They are backed up to the external NVMe.

I have performed disaster recovery of my Jellyfin VM and other VMs from the external NVMe to internal NVMe. When the server dies, I can fix it or buy a new server and restore the VMs from the external NVMe.

Hope this helps!

[–] non_burglar@lemmy.world 1 points 1 year ago* (last edited 1 year ago) (1 children)

If the target is zfs, use zfs send. If the target is anything else, rsync.

Schedule it with cron.

Be aware that with zfs snapshots, you need to replay them to restore, which means you'll periodically need to do a full backup. ClaraSystems has a number of guides on how to create zfs datasets to make efficient backups the way you want.

Edit: KlaraSystems, sorry.