ZFS 快照:我的保留策略
NAS 上的数据放在 ZFS 上。快照创建是瞬间完成的,刚创建时几乎不占额外空间,是防误删最划算的手段。
zfs snapshot tank/data@manual-2025-08-27
zfs list -t snapshot -o name,used,creation tank/data
zfs rollback tank/data@manual-2025-08-27
手动打快照容易忘,现在交给 sanoid 自动管理,配置在 /etc/sanoid/sanoid.conf:
[tank/data]
use_template = production
[template_production]
hourly = 24
daily = 30
monthly = 6
autosnap = yes
autoprune = yes
这样会保留最近 24 小时每小时一个、最近 30 天每天一个、最近 6 个月每月一个快照。只想找回单个文件时不用回滚整个数据集,到 /tank/data/.zfs/snapshot/ 下对应的快照目录里把文件复制出来就行。
要注意的是,快照和原数据在同一个存储池里,池坏了快照也一起没了。所以快照只防误操作,不能代替异地备份。