我意外地从 zfs 池中删除了一些文件,并尝试挂载最新的快照,但我发现我没有快照。如何激活快照,如何配置它?
我正在使用 Ubuntu 12.04.1 服务器和 zfs 0.6.1,池版本是 28。
答案1
从 Ubuntu 17.04 开始,您可以像这样安装 zfs-auto-snapshot:
sudo apt install zfs-auto-snapshot
对于 Ubuntu 17.04 之前的版本,你可以设置zfs 自动快照使用存储库的自动快照
sudo add-apt-repository ppa:zfs-native/stable; sudo apt-get install zfs-auto-snapshot
或者直接从 github
curl -L https://github.com/zfsonlinux/zfs-auto-snapshot/archive/master.tar.gz | tar xz -C /tmp/
pushd /tmp/zfs-auto-snapshot-master && sudo make install && popd && rm -rf /tmp/zfs-auto-snapshot-master
默认情况下,它每 15 分钟为每个数据集创建一次快照,并保存最多 1 年的快照。但是,您可以通过将com.sun:auto-snapshot
数据集属性设置为 false 来禁用特定数据集的快照
sudo zfs set com.sun:auto-snapshot=false tank/tmp
您还可以使用com.sun:auto-snapshot:...
属性来调整自动快照行为。例如,为 tank/backup 数据集每天保存快照,持续 31 天:
sudo zfs set com.sun:auto-snapshot=true tank/backup
sudo zfs set com.sun:auto-snapshot:monthly=false tank/backup
sudo zfs set com.sun:auto-snapshot:weekly=false tank/backup
sudo zfs set com.sun:auto-snapshot:daily=true tank/backup
sudo zfs set com.sun:auto-snapshot:hourly=false tank/backup
sudo zfs set com.sun:auto-snapshot:frequent=false tank/backup
默认情况下脚本保存:
- 每 15 分钟频繁快照,保留 4 个快照
- 每小时快照一次,保留 24 个快照
- 每日快照 每天,保留 31 个快照
- 每周快照 每周一次,保留 7 个快照
- 每月快照 每月,保留 12 个快照
答案2
如果您没有拍摄任何快照,您将丢失数据。
要拍摄快照,请使用zfs snapshot
命令
http://docs.oracle.com/cd/E19253-01/819-5461/gbcya/index.html