linux下开启程序崩溃生成core文件开关之ulimit详解

当Linux系统中的程序崩溃时,会产生一个coredump文件,包含程序崩溃时的堆栈信息,便于调试。ulimit命令用于设置生成coredump的开关和大小。通过调整ulimit设置,可以控制core文件的生成行为,例如限制大小和指定存储位置。使用gdb可打开core文件进行调试。通过`ulimit -a`可以查看所有系统限制,了解不同选项的作用。
摘要由CSDN通过智能技术生成

运行服务器程序经常会出现崩溃,而我们不可能一天24小时都等着他出现。在实际运行中也不能总是使用gdb启动,毕竟gdb绑定运行会消耗很大一部分性能。

不过linux系统在程序崩溃时会生成一个coredump文件,里面保存程序收到退出信号时的堆栈信息,对于调试c++程序是很有帮助的,ulimit命令就是设置程序崩溃时生成coredump文件的开关和大小。

使用命令在shell终端设置,只对当前终端有效,修改当前用户下配置文件,只对当前用户有效,修改etc下系统配置,对所有用户有效,这些都是通用的规律了。

使用命令gdb打开文件就可以调试查看崩溃的堆栈了,如果使用python调用的c++程序,打开core文件命令为gdb python core,使用c语言生产的coredump,打开命令为gdb c core,使用c++生成的coredump,打开命令为gdb cpp core。

查看当前生成core文件设置

ulimit -c

为0表示不生成core文件,非0的数字表示生成core文件大小,为unlimited表示不限制生成core文件大小。

ulimit -c 1024

表示设置core文件大小为1024kb,单位是kb。

ulimit -c unlimited

表示设置core文件大小不受限制。

顺便看看其他选项有什么用&

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值