Linux程序崩溃调试

一、简单点的

编译时主动带-g,生成的程序带调试信息,而且开启生成dump文件,这时候可以使用core dump来调试程序,定位问题。可以参考:linux 程序crash 调试、原因分析及问题定位-CSDN博客

二、稍微复杂点

假设生成的可执行文件带了调试信息,那么可以考虑用gdb来调试程序,调试的教程如下:gdb调试

三、再复杂点:如果core dump文件的堆栈信息被破坏了,又该如何定位问题呢?

参考下面博文,借助栈帧信息和寄存器信息来使用gdb-x命令排查问题

四、定位排查问题实战:没有core文件时定位segfault at 0 ip (null) 的问题

上连接:没有core文件时定位段错误问题

五、崩溃时要是没有core dump文件生成,那又该如何排查问题?

借助内核的segfault日志来定位问题:内核segfault定位程序崩溃

写在最后:

coredump文件是如何生成的?

相关推荐
123过去几秒前
trufflehog使用教程
linux·测试工具·安全
代码AC不AC16 分钟前
【Linux】System V 通信方式
linux·消息队列·共享内存·信号量·system v
vortex517 分钟前
vmware虚拟机设置启动时进入live cd
linux·网络安全
Lugas Luo33 分钟前
Ascend 310B 定制 SDHCI 主机控制器源码深层次劫持与优化解析
linux·嵌入式硬件
钟智强37 分钟前
Linux SSH密码爆破脚本,从原理到实践
linux·运维·ssh
wangjialelele1 小时前
一文读懂 Redis 持久化与事务
linux·数据库·redis·bootstrap
Linux蓝魔1 小时前
麒麟官方yum源配置V10SP2-V10SP3-V10SP3-2403
大数据·linux·运维
helloliyh1 小时前
linux 删除指定日期目录(包括目录下文件)
linux·运维·服务器
半个俗人1 小时前
06.Linux用户权限相关命令
linux·运维·服务器
小宇的天下1 小时前
Calibre LVS Circuit Comparison(1)
linux·数据库·lvs