logrotate 无法运行 Java postrotate 程序

logrotate 无法运行 Java postrotate 程序

当 logrotate 通过 systemd 启动时,较新版本的 logrotate 无法执行调用 Java 的 postrotate 操作。在我的日志中,我看到:

logrotate[123]: Error occurred during initialization of VM
logrotate[123]: Failed to mark memory page as executable - check if grsecurity/PaX is enabled

答案1

以下提交为 logrotate 的 systemd 脚本添加了强化选项: https://github.com/logrotate/logrotate/commit/1008bdf391e35684d8eeb2217c859f11e273ebb3

这些变化随 logrotate v3.14(也包含在 2019 年 7 月发布的 Debian 10 中)一起发布。

配置的选项之一 ( MemoryDenyWriteExecute=true) 导致 Java 程序执行失败。将此选项设置为 可以false解决我的问题,但可能会降低系统的安全性/强化程度。

相关内容