我们有一个应用程序可以动态生成命名管道(类型 p)。我们想要管理使用 Puppet 生成管道的目录中的其他文件。有没有一种简单的方法可以告诉 puppet 跳过该类型的文件。我可以忽略几个文件,如下所示:
file {'/var/opt/OV/share/tmp':
ensure => directory,
recurse => true, # enable recursive directory management
owner => user,
group => group,
mode => 2775,
ignore => 'ovcd.*',
}
Run Code Online (Sandbox Code Playgroud)
但正如我所说,我无法事先确定管道是如何命名的。我真的很想忽略 => 输入 p 或类似的东西。这可以在 Puppet 中标准完成吗?
我结束了:
exec { "set_perms_tmp":
command => '/usr/bin/find /var/opt/OV/tmp ! \( -type s -o -type p \) -exec chmod 2775 {} \; -exec chown -R bin:bin /var/opt/OV/tmp/* {} \;'
}
Run Code Online (Sandbox Code Playgroud)
Sockets 和 Puppet 也不是什么快乐。
我们有以下问题。偶尔,我们的应用程序服务器会吐出一个空的日志文件,或者(当它在周末时)根本没有日志文件。
我们使用 logrotate 来管理这些日志文件,在这两种情况下,我们都希望 logrotate 跳过尝试轮换空的或不存在的日志文件,因为它使 rt-ticket bin 和 Nagios 变得混乱,因为在这种情况下 logrotate 会向我发出 barfs。
有什么办法可以在 logrotate 中做到这一点(当然,我可以编写一个完全做到这一点的脚本(跳过空的和不存在的 onces_,但这不是我的问题)