Linux:core文件无法生成排查步骤

1、进程的RLIMIT_CORE或RLIMIT_SIZE被设置为0。使用getrlimit和ulimit检查修改。

使用ulimit -a 命令检查是否开启core文件生成限制

如果发现-c后面的结果是0,就临时添加环境变量ulimit -c unlimited,之后在启动程序观察是否有core生成,如果有,就将该命令添加到环境变量配置文件中。否则就要继续检查其他配置。

2、 /proc/sys/kernel/core_pattern文件为空,且/proc/sys/kernel/core_uses_pid值为0。

注意,若上述第一个文件为空且第二个文件值为1,core dump文件名将是.pid,需使用ls -a列出。

3.、若/proc/sys/kernel/core_pattern文件内容以"|"开始,"|"后面的内容将作为命令行,而core dump文件内容将作为该命令行的参数,此时也不会产生core dump文件。

4、进程无写权限(如目录不可写、存在同名的非regular文件(目录或符号链接)等)

比如进程启动用户为user1,实际程序所在目录bin所属是root,就有可能导致user1没有权限在bin目录下创建core文件。

5、指定目录不存在

6、文件系统空间不足

7、进程所执行的二进制文件无读权限

8、进程所执行的程序设置了set-user-ID (set-group-ID),且进程所有者与执行者不同。

8、存在同名文件且有多个hard link

相关推荐
llc的足迹24 分钟前
python构建webRTC服务器,coturn搭建中继服务器
服务器·python·webrtc·turn
CS_浮鱼27 分钟前
【Linux】基础IO
linux·运维·chrome
序属秋秋秋34 分钟前
《Linux系统编程之进程基础》【进程状态】
linux·运维·c语言·c++·笔记·操作系统·进程状态
Bruce_Liuxiaowei34 分钟前
HTTPHTTPS探测出网技术详解:跨平台命令与实战方法
运维·windows·安全·网络安全
BS_Li1 小时前
【Linux系统编程】进程控制
java·linux·数据库
言慢行善1 小时前
Docker
运维·docker·容器
可可苏饼干1 小时前
LVS服务器
linux·运维·笔记·学习·lvs
L.EscaRC1 小时前
Docker原理浅析(上)
运维·docker·容器
艾莉丝努力练剑3 小时前
【Linux基础开发工具 (三)】Vim从入门到精通(下):效率翻倍的编辑技巧与个性化配置攻略
linux·运维·服务器·c++·ubuntu·centos·vim
鹿鸣天涯4 小时前
国产服务器操作系统迁移指南
运维·服务器