使用下面的zfs-auto-snapshot
命令,如何指定保留 52 个每周快照和无限数量的每月快照?
sudo zfs set com.sun:auto-snapshot=true storage
sudo zfs set com.sun:auto-snapshot:weekly=true storage
sudo zfs set com.sun:auto-snapshot:monthly=true storage
当我将其指定为关键字或参数时,两次都失败了:
sudo zfs set com.sun:auto-snapshot:weekly=true storage keep=52
cannot open 'keep=52': invalid dataset name
sudo zfs set com.sun:auto-snapshot:weekly=true storage --keep=52
cannot open '--keep=52': invalid dataset name
答案1
这是我的一个系统的示例/etc/cron.d/zfs-auto-snapshot
。
PATH="/usr/bin:/bin:/usr/sbin:/sbin"
*/5 * * * * root /sbin/zfs-auto-snapshot -q -g --label=frequent --keep=24 //
00 * * * * root /sbin/zfs-auto-snapshot -q -g --label=hourly --keep=24 //
59 23 * * * root /sbin/zfs-auto-snapshot -q -g --label=daily --keep=14 //
59 23 * * 0 root /sbin/zfs-auto-snapshot -q -g --label=weekly --keep=4 //
00 00 1 * * root /sbin/zfs-auto-snapshot -q -g --label=monthly --keep=18 //
答案2
抱歉,如果我回答的是一个老问题,但没有一个答案能提供 OP 想要的内容。在为 zPool 设置自动快照时,如果您需要包含多个设置,则需要用逗号分隔它们,然后在末尾加上容器的名称。这是您需要的命令:
sudo zfs set com.sun:auto-snapshot:weekly=true,keep=52 storage
您还可以转到您的 cron 计划(Ubuntu:/etc/cron.weekly)并按照其他人提到的那样在那里进行更改。
答案3
您需要编辑 的调用zfs-auto-snapshot
。该文件应位于/etc/cron.weekly/zfs-auto-snapshot
。其中设置了默认值 8。
我个人之前不知道这个工具。我用的是赞吧。它在标准存储库中可用。
答案4
apt install zfs-auto-snapshot
帮我解决了。它以很好的方式安装了 @ewwhite 答案中的 cron 条目(daily=31、hourly=24、monthly=12、weekly=8)。只有 weekly 对我来说有点令人惊讶。