2010-11-12 207 views
2

我正在尝试使用kdump和崩溃实用程序分析openSUSE 11.3上的Linux内核恐慌。系统正在成功创建vmcore文件,但是当我去分析它时,崩溃抱怨缺少符号。在运行崩溃时vmlinux中没有调试数据来分析内核恐慌

# crash -s vmlinux-2.6.34-12-desktop.gz vmcore 
crash: vmlinux-2.6.34-12-desktop.gz: no debugging data available 
crash: vmlinux-2.6.34-12-desktop.debug: debuginfo file not found 

crash: either install the appropriate kernel debuginfo package, or 
     copy vmlinux-2.6.34-12-desktop.debug to this machine 

该系统运行的股票桌面内核

# uname -r 
2.6.34-12-desktop 

,并安装了kernel-develkernel-desktop-devel包。其他软件包是否具有调试符号(类似于Red Hat的kernel-debuginfo rpm),还是有另一种方法/内核我应该使用?

回答

4

openSUSE的符号的命名方式与Red Hat及其变体(CentOS,Fedora,...)类似,但生活在不同的repository中。在本例中,vmlinux符号位于kernel-desktop-devel-debuginfo包中,但实际上,您可能还想要获取模块符号的kernel-desktop-debuginfo

0

加载内核的“kernel-debug-devel”包。

+0

系统已经安装了所有内核 - * - devel软件包,包括调试,但是您的意思是我需要运行调试内核('/ boot/vmlinuz-2.6.34.7-0.5-debug')吗? – ctuffli 2010-11-12 21:34:35

+0

你说你在运行“2.6.34-12” - 列出的调试内核是“2.6.34.7-0.5”。所以如果你只有内核的调试符号 - 你需要运行它 - *但是*确保你已经安装了模块。 – Brad 2010-11-13 03:33:15

+0

我的歉意,2.6.34.7-0.5是一个剪切粘贴错误;事实上一切都是2.6.34-12。我安装了调试内核,但是在'/ boot/vmlinux-2.6.34-12-debug.gz'中指向崩溃时会出现相同的“无调试数据可用”错误。 – ctuffli 2010-11-17 23:18:21