清理过期的旧文件
优质
小牛编辑
139浏览
2023-12-01
我们每隔一段时间就会打扫一次房间。 Puppet 的 tidy
资源可以帮助你清理已过期的旧文件,从而减少不必要的磁盘占用。 例如,如果你像 生成报告 一节描述的那样启用了 Puppet 的报告, 就会希望定期清除旧的报告文件。
操作步骤
添加如下代码到你的配置清单:
tidy { "/var/lib/puppet/reports": age => "1w", recurse => true, }
运行 Puppet:
# puppet agent -–test info: Retrieving plugin info: Caching catalog for cookbook. bitfieldconsulting.com notice: /Stage[main]//Node[cookbook]/Tidy[/var/lib/puppet/ reports]: Tidying File[/var/lib/puppet/reports/cookbook. bitfieldconsulting.com/201102241546.yaml] notice: /Stage[main]//Node[cookbook]/Tidy[/var/lib/puppet/ reports]: Tidying File[/var/lib/puppet/reports/cookbook. bitfieldconsulting.com/20110214727.yaml] ... info: Applying configuration version '1306149187' notice: /File[/var/lib/puppet/reports/cookbook.bitfieldconsulting. com/201102241546.yaml]/ensure: removed notice: /File[/var/lib/puppet/reports/cookbook.bitfieldconsulting. com/201102141727.yaml]/ensure: removed … notice: Finished catalog run in 1.48 seconds
工作原理
Puppet 会搜索指定路径下所有匹配 age
参数的文件:本例中的存活时间为 1w
(一周)。 也可以搜索子目录(recurse => true
)。
任何与你指定的标准匹配的文件都会被删除。
更多用法
你可以指定文件存活时间的单位,单位可以是:秒(s)、小时(h)、天(d)和周(w),下面是几个例子:
60s
180m
24h
30d
4w
你也可以指定文件的大小,当文件的尺寸大于你指定的尺寸后就会删除它,例如:
size => "100m",
这会删除所有大于 100 megabytes(m) 的文件。单位也可以是:kilobytes(k)或 bytes(b)。
值得注意的是,如果你同时指定了 age => "1d", size => "512k", |