TrueNAS Backup NAS with ZFS
Build a resilient backup target with sane datasets, shares, and snapshot policies.
Pool + Dataset Design
Create a ZFS pool sized for backups (mirror for small labs or RAIDZ2 for 4–6 disks). Keep SLOG/L2ARC off unless you know you need them.
- Datasets per tenant: /backups/proxmox, /backups/files, /backups/media.
- Compression: lz4; recordsize: 1M for large files, 128K for VMs.
- ACL: POSIX on Linux shares; SMB preset for Windows fleets.
Network Plan
- Static IP on management VLAN; optional storage VLAN.
- Enable LLDP to keep track of switch ports.
- Jumbo frames only if end-to-end verified.
Snapshots + Replication
Local snapshots
Daily for 7–14 days on VM datasets; hourly for working files if you have space.
Hold last: 24h + 2w
Replication target
Pull from Proxmox backup storage or rsync modules. Keep a dedicated user/key.
Channel: SSH + compression
Integrity
Scrub monthly; SMART short weekly, long monthly. Email alerts on failure.
`zpool scrub backups`
SMB/NFS Shares
- SMB for Windows/macOS clients; enable recycle bin on user shares, not on backups.
- NFS for Proxmox backup target; map to a dedicated dataset with reserved space.
- Lock permissions to a service account; avoid guest access.
Backup Recipes
- Proxmox: VZDump to NFS target nightly, prune with keep-last and keep-weekly.
- Files: restic or rsync from Linux hosts; Veeam/Time Machine for desktops.
- Offsite: rclone to object storage for critical datasets only.