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

相关推荐
星恒随风4 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
少司府5 小时前
嵌入式入门篇(二):初识STM32F103ZET6
linux·python·stm32·单片机·嵌入式硬件·mcu·嵌入式软件
无足鸟ICT5 小时前
【RHCA+】IO调度算法
linux·服务器
打工仔折腾 AI5 小时前
Changedetection.io 网页变动监控:Docker 部署、通知配置与公网暴露实践
运维·人工智能·后端·python·docker·容器·性能优化
wacsii6 小时前
【Linux进程(四)】命令行参数与环境变量
linux·服务器
无奈笑天下6 小时前
银河麒麟上lsblk命令教程详解
linux·运维·服务器·数据库
fengkai45456 小时前
Prometheus+K8s弹性伸缩综合项目
运维·kubernetes·k8s·prometheus·hpa·vpa
科研邪修法7 小时前
培训PDF保护配置:把需求转换成可验收权限
linux·服务器·网络
Felven7 小时前
中科驭数100G网卡RDMA性能测试
linux·rdma·中科驭数·100g网卡
分布式存储与RustFS8 小时前
镜像仓库的层别只堆本地盘:用 RustFS 给 Harbor 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准