Skip to content

14/09/26 Adding Automated Backups to the Homelab

I finally added proper automated backups for the two Linux systems that currently matter most in the homelab.

  • Backup target: TerraMaster TNAS
  • Storage: 2 × 2 TB BTRFS pool using TRAID
  • Created a dedicated backups shared folder on the protected pool.
  • Installed and configured TerraMaster Centralized Backup.
  • Chose rsync for the Linux backup transport.
  • Configured the Ubuntu AI server as a read-only rsync source.
  • Configured the Raspberry Pi infrastructure server the same way.
  • Created a dedicated backup account rather than using normal Linux login credentials.
  • Restricted rsync access to the local network through the host firewalls.
  • Backups use incremental mode, so after the initial copy only changed data needs to be transferred.
  • Backups can be scheduled automatically from the TNAS rather than maintaining separate backup scripts on every machine.

Ubuntu AI Server

The important areas being protected include:

  • /etc
  • /home
  • /srv/ai
  • systemd and service configuration
  • AI project data and configuration

Large reproducible data such as downloaded model files does not necessarily need to be backed up if it can simply be downloaded again.

Raspberry Pi

The Pi is particularly important because it hosts several always-on homelab services.

Backed-up areas include:

  • /etc
  • /home/rory
  • Actual Budget data
  • Glance configuration
  • Uptime Kuma data
  • Pi-hole configuration
  • Caddy configuration
  • Bitwarden application data
  • Caddy's persistent Docker volumes

I deliberately avoided backing up the whole Docker data directory because container images and layers can be recreated.

Next Steps

  • Enable regular BTRFS snapshots of the TNAS backup share.
  • Test restoring individual files from both machines.
  • Add application-aware backups for important services such as Bitwarden.
  • Eventually add a second offline or off-site copy of the most important TNAS data.

This gives the homelab a much better baseline: the servers can still be rebuilt from scratch, but their configuration and important application state no longer live on a single disk.