не удалось настроить аварийный дамп на centos7 для отладки ядра

Я пытаюсь настроить kdump для создания vmcore для kernel-3.10.0-123.el7. Для ядра perf kernel-3.10.0-123.el7.x86_64.rpm я настраиваю kdump, и kdump тоже работает нормально, генерируя vmcore. Затем я установил

ядро-отладка-3.10.0-123.el7.x86_64.rpm

используя yum install kernel-debug-3.10.0-123.el7.x86_64.rpm, и kdump работали нормально.

Но тогда у меня не было vmlinux для чтения vmcore ядра отладки. Затем я создаю исходный код, используя rpmbuild из исходного кода.

ядро-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

только для ядра perf, а не для ядра отладки

Итак, из ~ / rpmbuild / SOURCES

Я скопировал linux-3.10.0-123.el7.x86_64.tar.xz и использовал kernel-3.10.0-x86_64-debug.config как .config, чтобы получить vmlinux

Когда я использовал этот недавно созданный vmlinux для отладки ядра при сбое, он выдал ошибку, связанную с несоответствием версии ядра. Теперь я застрял.

Пожалуйста, помогите мне настроить kdump на centos7 с отладкой ядра и отладкой vmlinux.


person skaushal    schedule 13.08.2015    source источник
comment
Вам следует использовать собственное системное ядро ​​vmlinux, в чем проблема?   -  person Alex Hoppus    schedule 13.08.2015
comment
kernel-3.10.0-123.el7.x86_64.rpm ядро ​​по умолчанию поставляется с centos7 ... еще одна вещь, которую я установил centos7 на виртуальном ящике   -  person skaushal    schedule 14.08.2015


Ответы (1)


Поскольку я новичок в 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 работает с ядром без отладки.

person skaushal    schedule 15.08.2015