Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 无法在centos7上为调试内核设置崩溃转储_Linux_Debugging_Linux Kernel_Crash_Centos7 - Fatal编程技术网

Linux 无法在centos7上为调试内核设置崩溃转储

Linux 无法在centos7上为调试内核设置崩溃转储,linux,debugging,linux-kernel,crash,centos7,Linux,Debugging,Linux Kernel,Crash,Centos7,我正在尝试设置kdump来为kernel-3.10.0-123.el7生成vmcore。对于perf kernel-3.10.0-123.el7.x86_64.rpm,我的设置kdump和kdump也可以正常工作,生成vmcore。 然后我安装了 kernel-debug-3.10.0-123.el7.x86_64.rpm 使用yum安装kernel-debug-3.10.0-123.el7.x86_64.rpm和kdump工作正常 但我并没有vmlinux来读取调试内核的vmcore。 然后,

我正在尝试设置kdump来为kernel-3.10.0-123.el7生成vmcore。对于perf kernel-3.10.0-123.el7.x86_64.rpm,我的设置kdump和kdump也可以正常工作,生成vmcore。 然后我安装了

kernel-debug-3.10.0-123.el7.x86_64.rpm

使用yum安装kernel-debug-3.10.0-123.el7.x86_64.rpm和kdump工作正常

但我并没有vmlinux来读取调试内核的vmcore。 然后,我使用源代码中的rpmbuild构建源代码

kernel-3.10.0-123.el7.src.rpm

但我看到了vmlinux的存在

~/rpmbuild/BUILD/kernel-3.10.0-123.el7/linux-3.10.0-123.el7.x86_64/vmlinux

仅适用于性能内核,不适用于调试内核

所以从~/rpmbuild/来源

我复制了linux-3.10.0-123.el7.x86_64.tar.xz并使用 kernel-3.10.0-x86_64-debug.config作为.config获取vmlinux

当我使用这个新构建的vmlinux进行内核崩溃调试时,它抛出了内核版本不匹配的错误。现在我被卡住了


请帮助我使用调试内核和调试vmlinux在centos7上设置kdump。

由于我是centos新手,我不知道调试包有vmlinux。我已使用以下命令安装调试RPM:

yum --enablerepo=debug install kexec-tools crash kernel-debug kernel-debuginfo-`uname -r`
我注意到kernel-debuginfo-3.10.0-123.el7.x86_64在以下位置具有vmlinux:

/usr/lib/debug/lib/modules/3.10.0-123.el7.x86_64/vmlinux
所以我得到了vmlinux


此vmlinux与非调试内核一起工作。

您应该使用本机系统内核vmlinux,这有什么问题?kernel-3.10.0-123.el7.x86_64.rpm默认内核随centos7提供。。。还有一件事我已经在virtual box上安装了centos7