我最近在家用服务器上设置了一个 ubuntu 22.04 系统。我已选择 ZFS 作为文件系统。我将使用 ubuntu 系统执行一些在 Windows 上无法轻松完成的任务,并且我想运行一个小型 Kubernetes 安装。
因此,我想知道哪种备份策略最好。由于不熟悉 ZFS,我做了一个小教程 (https://ubuntu.com/tutorials/using-zfs-snapshots-clones) 并在 Google 上搜索。我目前最好的猜测是定期运行一个 cron 作业,将我机器文件系统的完整备份发送到我的 NAS。我的 Ubuntu 的 zpool 列表显示 2 个池(bpool 和 rpool)。
我可以想到两种情况:
- 我的安装搞乱了,我想返回到早期的快照(即上周)
- 我的服务器磁盘坏了
我认为在这两种情况下我都可以(可能)做类似的事情,如下所述:如何正确保存和恢复 Ubuntu 系统的加密 ZFS 快照?因此我会这样做(定期通过 cron):
zfs snapshot -r rpool@snapshotname
zfs snapshot -r bpool@snapshotname
- 将两个快照发送到 nas
zfs send --replicate --raw rpool@snapshotname > /mnt/nas-mount/ubuntu-snapshots/snapshotname.zstream
并zfs send --replicate --raw bpool@snapshotname > /mnt/nas-mount/ubuntu-snapshots/snapshotname2.zstream
那么,我是否也可以通过运行以下命令在全新磁盘的情况下恢复系统
zfs receive newrpool < /mnt/nas-mount/ubuntu-snapshots/snapshotname.zstream
- 并通过以下方式回滚到快照
zfs rollback -rR NAME
或者这只在我想要恢复数据但磁盘完好无损的情况下才有效?还有其他需要考虑的或更好的想法吗?不幸的是,我没有 2 个带有 ZFS 的系统。