我有一个 perl 脚本,我想将其作为日志轮换的 perorate 脚本运行。当我强制日志轮换从命令行以 运行时root
,它可以工作。但是,当通过 cron 运行时,SELinux 会阻止操作。
我不记得第一个错误是什么,但我使用 修复了它audit2allow
。第二天,我收到 SELinux 正在阻止/usr/bin/perl
对脚本的读取访问。修复了这个问题后,现在我收到 SELinux 正在阻止/usr/bin/perl
对脚本的开放访问。我迫不及待地想看看明天会得到什么(因为我不能直接运行这个东西来测试,因为当我手动运行它时它运行良好。)- 可能是关于写入其中一个输出文件的内容。
有没有什么方法可以简化这个迭代过程,并且只是说是的,perl 可以运行这个脚本,即使是从日志旋转启动时?
答案1
如果您将 SELinux 置于宽容模式,事情就会变得容易得多。
setenforce 0
在此模式下,SELinux 将记录错误但不采取任何措施。这样,您可以一次性收集所有相关消息并采取适当的措施。
您应该采取必要的步骤来确保您执行脚本执行的所有相关操作。
您可能还可以更频繁地运行 cron 作业来收集消息。