如何在 Linux 中为每个进程进行核心转储?

如何在 Linux 中为每个进程进行核心转储?

如何制作Linux不仅针对守护进程转储每个进程?

答案1

你需要改变这些

使用 ulimit 检查当前核心限制

root@x:/tmp# ulimit -c
0

0 表示未生成核心

root@x:/tmp# ulimit -c unlimited

将其设置为无限制或任何其他值(这是核心文件的最大大小)

root@x:/tmp# ulimit -c
unlimited
root@x:/tmp# 

root@x:/tmp# 
root@x:/tmp# ulimit -a
core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 20
file size               (blocks, -f) unlimited
pending signals                 (-i) 16382
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
v    irtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
root@x:/tmp# 

这将更改当前会话的核心限制。您需要将其添加到 /etc/init.d [文件名取决于发行版] 中,以便在计算机启动时设置这些值。

相关内容