Answers:
如果您不想为apport-retrace
工具安装一堆子依赖项,则可以将apport格式解压缩到单独的文件中,并且像往常一样仅使用CoreDump
转储gdb
。
apport-unpack systemGeneratedCrashReportPath.crash yourNewUnpackDirectoryHere
cd yourNewUnpackDirectoryHere/
gdb `cat ExecutablePath` CoreDump
(在这里注意波浪号!)bt
(输出实际回溯)
注意:apport-unpack
有时在解压缩操作时会崩溃(apport似乎在所有地方都损坏了... xD),但是您的CoreDump和其他文件将在那里,只是忽略它,并在/var/crash
将它们移至其他位置后删除所有.crash文件以允许系统从那里的相同应用程序输出新的崩溃报告。
ExecutablePath
。我认为读者必须在此处填写可执行文件路径。
有一个名为的工具apport-retrace
可以读取.crash文件,并允许您使用完全符号化的堆栈跟踪填充该文件或gdb
使用核心转储运行会话。要启动gdb会话,请运行apport-retrace -g CRASHFILE.crash
。请注意,您需要安装-dbg软件包才能获得良好的堆栈跟踪。
话虽这么说(我不是PHP专家),实际上可能是您在导致崩溃的文件之一中写的东西。
t seem to work:
#apport-retrace -g _usr_sbin_php5-fpm.1002.crash错误:报告文件不包含以下必填字段之一:CoreDump DistroRelease Package ExecutablePath` # grep CoreDump _usr_sbin_php5-fpm.1002.crash CoreDump: base64