sles12 - 为什么没有为 systemd 服务生成核心转储?

sles12 - 为什么没有为 systemd 服务生成核心转储?

我在 sles12 env 上看到一个问题,为系统服务创建核心转储(如下面的 java 应用程序)。需要一些帮助来了解 sles12 核心转储创建过程。

我的目标是设置一个ulimit适用于所有进程(用户启动、systemd 启动或其他进程)的配置。能实现吗?

条件: 1. 由于以下配置,我们期望所有进程默认创建转储:文件/etc/security/limits.conf已普遍配置为供所有进程使用极限值unlimited)。 2.我的应用程序是一个java jar,正在由systemd实例化。

答案1

在我的 Fedora 系统上,man limits.conf说它仅影响用户会话。它是使用PAM 模块应用的pam_limits

所有 systemd 单元的默认 ulimit 都可以在 中设置/etc/systemd/system.conf,例如DefaultLimitCORE=。看man systemd-system.conf。如果未指定值,则使用从内核继承的默认值。

参考资料中也提到了这一点man systemd.exec,其中讨论了为特定 systemd 服务设置 ulimit。

相关内容