Ubuntu 1804 And Above Coredump Settings
在Ubuntu 18.04及以上版本中,要配置核心转储(core dump)的设置,你需要设置两个系统变量:ulimit
和/proc
文件。
- 使用
ulimit
命令设置当前shell会话的核心转储大小:
ulimit -c unlimited # 设置core dump大小无限制
ulimit -c 0 # 禁用core dump
- 永久更改
/proc
文件中的设置,编辑/etc/profile
或用户的~/.bashrc
文件,添加以下行:
echo /path/to/core.%e.%p > /proc/sys/kernel/core_pattern
sysctl -w kernel.core_uses_pid=1 # 在core文件名中包含PID
替换/path/to/core
为你想要存储core dump文件的路径。设置core_uses_pid
为1会在core文件名中包含进程ID,这样每个核心转储文件都有唯一的名字。
以下是一个示例脚本,用于设置核心转储的路径和大小:
#!/bin/bash
# 设置core dump路径
echo "/cores/core.%e.%p" > /proc/sys/kernel/core_pattern
# 启用core dump并设置大小无限制
ulimit -c unlimited
# 如果需要,启用PID在core文件名中
sysctl -w kernel.core_uses_pid=1
将此脚本保存为/etc/profile.d/cores.sh
并使其可执行(chmod +x /etc/profile.d/cores.sh
),然后重新登录或重新加载环境变量以应用更改。
评论已关闭