Linux kernel 为什么kexec工具没有';不行?我做错什么了吗?

Linux kernel 为什么kexec工具没有';不行?我做错什么了吗?,linux-kernel,Linux Kernel,我正在尝试使用kexec和kdump在系统崩溃时重新启动系统。我已经设置了kexec和kdump配置,但它仍然不起作用。我已经设置了kernel.panic=10。我做错什么了吗 我使用的是ubuntu18.04 LTS和kdump config show,如下所示 DUMP_MODE: kdump USE_KDUMP: 1 KDUMP_SYSCTL: kernel.panic_on_oops=1 KDUMP_COREDIR: /var/crash cr

我正在尝试使用
kexec
kdump
在系统崩溃时重新启动系统。我已经设置了kexec和kdump配置,但它仍然不起作用。我已经设置了
kernel.panic=10
。我做错什么了吗

我使用的是ubuntu18.04 LTS
kdump config show
,如下所示

DUMP_MODE:        kdump
USE_KDUMP:        1
KDUMP_SYSCTL:     kernel.panic_on_oops=1
KDUMP_COREDIR:    /var/crash
crashkernel addr: 0x23000000
   /boot/vmlinuz-4.18.0-25-generic
kdump initrd: 
   /boot/initrd.img-4.18.0-25-generic
current state:    ready to kdump
kexec
命令:

/sbin/kexec -p --command-line="BOOT_IMAGE=/boot/vmlinuz-5.0.0-23-generic root=UUID=9444b3a0-3ccc-4f57-8f51-bbf005963b11 ro quiet splash pci=nomsi pci=noaer pcie_aspm=off vt.handoff=1 nr_cpus=1 systemd.unit=kdump-tools-dump.service irqpoll nousb ata_piix.prefer_ms_hyperv=0" --initrd=/boot/initrd.img-4.18.0-25-generic /boot/vmlinuz-4.18.0-25-generic

谁能给我一些建议吗?tks

如果您在虚拟机中使用此功能,则可以设置串行控制台以输出和保存来宾系统的日志。例如,这可能有助于分析kexec内核挂起或崩溃时的问题。还有,到底什么是不起作用的?内核崩溃后系统是否重新启动?或者,它重新启动但不保存转储?还是别的什么?@Eugene它只是卡在那里了,我不知道是否重启了。我查了一下日志,似乎什么都没有改变。你是想直接运行kexec还是以某种方式触发内核崩溃?怎么用?如果您试图直接运行kexec,请检查使用“echo c>/proc/sysrq trigger”使内核崩溃是否会触发重新启动并保存转储。@Eugene我试图触发内核崩溃以测试其功能,我也尝试过直接运行它,但结果相同。在我设置kexec的config之前,kernel.panic仍然可以工作,但在我设置kexec之后它失败了。您认为我输入的命令有什么问题吗?或者是否有其他方法,比如设置grub参数以在崩溃时加载另一个内核?这对我的家庭作业来说是个难题。