我遇到了 dirvsh 过期规则的问题。它们似乎根本不匹配。
情况
系统
Linux titan 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u3 (2015-08-04) x86_64 GNU/Linux
dirvish 1.2.1-1.2
rsync 3.1.1-3
主配置文件
bank:
/var/backup
exclude:
/backup/**
/dev/**
/proc/**
/sys/**
/mnt/**
/lost+found/**
/var/tmp/**
/tmp/**
/var/cache/apt/archives/*.deb
/var/lib/localbackup/**
log: bzip2
image-default: %Y-%m-%d-%H
Runall:
server1
expire-default: +6 hours
expire-rule:
hr { 00,01 } +7 days
wd { mon } +4 weeks
md { 1 } +2 months
我使用 Time::Period 符号代替 cronjob 符号。请参阅:http://www.dirvish.org/dirvish.conf.5.html部分过期规则
/etc/cron.d/dirvish
0 */2 * * * root /etc/dirvish/dirvish-cronjob
/etc/dirvish/dirvish-cronjob
实际上它是来自 debian 包的库存文件。我删除了/usr/sbin/dirvish-expire --quiet收集所有备份集,以便我可以查看摘要文件中的过期声明。
/usr/sbin/dirvish-runall --quiet
我希望的备份保留间隔
- 将 00:00 或 01:00 所做的备份保留 7 天。
- 两个月的第一天。
- 并且周一进行了为期 4 周的备份。
症状
一个名为 2015-08-23-00 的备份集。这意味着在 00:00 制作(参见 image-default)。这应该保留 7 天,但在摘要中显示为:
Image-now: 2015-08-23 00:44:27
Expire: +6 hours == 2015-08-23 06:44:27
现在又有一个,是今天早上做的。2015-08-24-01
Image-now: 2015-08-24 01:04:56
Expire: +6 hours == 2015-08-24 07:04:56
该设置很新,因此我没有任何旧的备份集来检查 2 个月的间隔。
任何帮助都非常感谢。如果您需要更多信息,请告诉我。
提前致谢。