27

我最近一直在进行密集的程序/包安装,所以我无法确定哪些新安装的程序(或旧程序)导致core我的主文件夹中出现文件。这是一台服务器,所以我最好找出机器上任何可能的不稳定来源。

4

3 回答 3

46

您可以简单地使用该file程序来识别它们:

例如

# file /var/core/core
/var/core/core:     ELF 64-bit MSB core file SPARCV9 Version 1, from 'crs_stat.bin'
于 2012-11-09T13:25:43.287 回答
6

通常在核心文件上使用文件程序会显示错误的可执行文件,正如@Benj 在接受的答案中所解释的(来自 Benj 的答案的代码):

# file /var/core/core
/var/core/core:     ELF 64-bit MSB core file SPARCV9 Version 1, from 'crs_stat.bin'

但是,有时您可能会收到有关“程序头部分过多”的抱怨:

core.some-lib.nnnn.nnnn: ELF 64-bit LSB  core file x86-64, version 1 (SYSV), too many program header sections (1850)

在这种情况下,您可以尝试一些替代方案:

  • 跟踪核心文件的最后几个字符串(该应用程序对我来说大约是 25 个):strings core.some-lib.nnnn.nnnn | tail -50
  • 使用 gdb 本身:gdb -c core.some-lib.nnnn.nnnn这通常会告诉你这样的事情:Core was generated by '/usr/local/bin/some-executable'
于 2018-02-23T22:11:14.287 回答
0

您可以导航到 core.pid 所在的目录并运行 gdb core core.pid

于 2018-02-08T12:49:35.530 回答