1. ulimit -a 查看core文件信息
core
file
size
(blocks, -c
) 0data seg
size
(kbytes, -d
) unlimitedscheduling priority
(-e
) 20
file
size
(blocks, -f
) unlimitedpending signals
(-i
) 16382max locked memory
(kbytes, -l
) 64max memory
size
(kbytes, -m
) unlimitedopen files
(-n
) 1024pipe
size
(512 bytes, -p
) 8POSIX message queues
(bytes, -q
) 819200real-time priority
(-r
) 0stack
size
(kbytes, -s
) 8192cpu time
(seconds, -t
) unlimitedmax user processes
(-u
) unlimitedvirtual memory
(kbytes, -v
) unlimited
file locks
(-x
) unlimited
如果看到 core file size 是0 那就说明功能是关闭的
2.
(1)
ulimit -c unlimited 设置允许当前生成没有大小限制的core file 只能对当前终端有效 退出无效
(2) 用户级别 。用户在自己的 ~ /.bash_profile 加入
ulimit
-S
-c unlimited > /dev/null 2>&1 这样设置后允许当前用户生成没有大小限制的core_dump文件
(3)对所有用户 /etc/profile 加入或者修改
ulimit
-S
-c unlimited > /dev/null 2>&1 这样设置后允许所有用户生成没有大小限制的core_dump文件
(4)core文件名称设置
在/proc/sys/kernel/core_uses_pid 中配置是否core带pid的扩展
文件内容为1,表示添加pid作为扩展名,生成的core文件格式为core.xxxxx;(xxxxx如12345为pid)
为0则表示生成的core文件统一命名为core
echo "1" >; /proc/sys/kernel/core_uses_pid
3.保存位置和文件名格式
/proc/sys/kernel/core_pattern 中配置生成文件的文件名和保存位置
例:
echo "/tmp/core-%e-%p-%t" >; /proc/sys/kernel/core_pattern 统一生成到/tmp目录下
生成到当前目录下方便使用
echo
"core-%e-%p-%t"
>
/proc
/sys
/kernel
/core_pattern