激活 ZFS 快照

激活 ZFS 快照

我意外地从 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

相关内容