您尚未登录。

#1 2020-06-02 16:24:49

beginner
会员
注册时间: 2019-10-07
帖子: 256

[已解决]ulimit 生成的core文件在哪?

ulimit 设置为unlimited后,执行程序如果崩溃,会在程序的当前目录生成一个core
以上是在某视频中得知,对方使用的是ubautu,视频中确实也在当前目录生成了一个core。

执行:ulimit -c
输出:unlimited
但我这边即使程序崩溃也没有在程序的当前目录生成一个core文件。是我少设置了什么吗?
还是说在其他地方生成?

最近编辑记录 beginner (2020-06-02 20:06:38)

离线

#2 2020-06-02 16:36:05

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,460
个人网站

Re: [已解决]ulimit 生成的core文件在哪?

coredumpctl list

离线

#3 2020-06-02 17:49:07

beginner
会员
注册时间: 2019-10-07
帖子: 256

Re: [已解决]ulimit 生成的core文件在哪?

依云 说:

coredumpctl list

打印出来的是这些:

TIME                            PID   UID   GID SIG COREFILE  EXE
...
Sun 2020-05-31 22:55:25 CST     897  1000   985  11 present   /usr/local/bin/qq
Sun 2020-05-31 23:10:56 CST    7811  1000   985  11 present   /usr/local/bin/qq
Mon 2020-06-01 00:38:09 CST   14774  1000   985  11 present   /usr/local/bin/qq
Tue 2020-06-02 13:32:56 CST     837  1000   985  11 present   /usr/local/bin/qq
Tue 2020-06-02 13:33:23 CST    1039  1000   985  11 present   /usr/local/bin/qq
Tue 2020-06-02 13:33:39 CST    1071  1000   985  11 present   /usr/local/bin/qq
Tue 2020-06-02 13:34:08 CST    1103  1000   985  11 present   /usr/local/bin/qq

但我要的是能在gdb中得到程序崩溃后的信息:gdb ... core

离线

#4 2020-06-02 18:51:14

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,460
个人网站

Re: [已解决]ulimit 生成的core文件在哪?

beginner 说:

但我要的是能在gdb中得到程序崩溃后的信息:gdb ... core

你就不会自己看一眼文档么:
coredumpctl gdb

离线

#5 2020-06-02 20:05:54

beginner
会员
注册时间: 2019-10-07
帖子: 256

Re: [已解决]ulimit 生成的core文件在哪?

Use coredumpctl to find the corresponding dump:

# coredumpctl list

You need to uniquely identify the relevant dump. This is possible by specifying a PID, name of the executable, path to the executable or a journalctl predicate (see coredumpctl(1) and journalctl(1) for details). To see details of the core dumps:

# coredumpctl info PID

Pay attention to "Signal" row, that helps to identify crash cause. For deeper analysis you can examine the backtrace using gdb:

# coredumpctl gdb PID

When gdb is started, use the bt command to print the backtrace:

(gdb) bt

好吧,解决了

最近编辑记录 beginner (2020-06-02 20:08:18)

离线

页脚