如何在Ubuntu 12.04上读取崩溃文件?

时间:2014-03-15 01:35:45

标签: crash gdb ubuntu-12.04 php coredump

php5-fpm在我们身上崩溃,我们希望获得有关当时正在执行的内容的信息。我们无法从xdebug那里得到它,因为它正在生产中发生。

我将失败实例的驱动器安装到另一个(/ mnt)并尝试读取崩溃文件:

版本信息

root@dev:/mnt/var/crash# cat /mnt/etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.4 LTS"

尝试使用gdb打开崩溃文件..但无法识别:

root@dev:/mnt/var/crash# gdb /mnt/usr/sbin/php5-fpm _usr_sbin_php5-fpm.1002.crash 
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /mnt/usr/sbin/php5-fpm...(no debugging symbols found)...done.
"/mnt/var/crash/_usr_sbin_php5-fpm.1002.crash" is not a core dump: File format not recognized

然后尝试崩溃:

root@dev:/mnt/var/crash# crash _usr_sbin_php5-fpm.1002.crash 

crash 6.1.6
Copyright (C) 2002-2013  Red Hat, Inc.
Copyright (C) 2004, 2005, 2006, 2010  IBM Corporation
Copyright (C) 1999-2006  Hewlett-Packard Co
Copyright (C) 2005, 2006, 2011, 2012  Fujitsu Limited
Copyright (C) 2006, 2007  VA Linux Systems Japan K.K.
Copyright (C) 2005, 2011  NEC Corporation
Copyright (C) 1999, 2002, 2007  Silicon Graphics, Inc.
Copyright (C) 1999, 2000, 2001, 2002  Mission Critical Linux, Inc.
This program is free software, covered by the GNU General Public License,
and you are welcome to change it and/or distribute copies of it under
certain conditions.  Enter "help copying" to see the conditions.
This program has absolutely no warranty.  Enter "help warranty" for details.

crash: _usr_sbin_php5-fpm.1002.crash: not a supported file format

文件本身有一些基本信息,但它的内容似乎是base64编码:

[...]
Signal: 11
Uname: Linux 3.2.0-59-virtual x86_64
UserGroups:
CoreDump: base64
 H4sICAAAAAAC/0NvcmVEdW1wAA==
[...]

关于我怎么读这个的任何想法?

1 个答案:

答案 0 :(得分:8)

您想阅读“如何使用这些崩溃报告?”第here节。

使用apport-unpack解压缩核心转储,GDB将能够分析。