我想在发生错误时读取另一个内核

i want read another kernel when an error occurs

在读取内核时,我想在发生错误时读取另一个内核。 因为内核编译中的 ssh 远程。是否可以使用 grub 选项?

title CentOS (3.13.6)
        root (hd0,0)
        kernel /vmlinuz-3.13.6 ro root=/dev/mapper/vg_sizone-lv_root rd_NO_LUKS rd 
_LVM_LV=vg_sizone/lv_root rd_NO_MD crashkernel=auto LANG=ko_KR.UTF-8  KEYBOARDTYPE 
=pc KEYTABLE=ko rd_LVM_LV=vg_sizone/lv_swap rd_NO_DM rhgb quiet
        initrd /initramfs-3.13.6.img
title CentOS (2.6.32-642.6.1.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-642.6.1.el6.x86_64 ro root=/dev/mapper/vg_sizone-lv 
_root rd_NO_LUKS rd_LVM_LV=vg_sizone/lv_root rd_NO_MD crashkernel=auto LANG=ko_KR. 
UTF-8  KEYBOARDTYPE=pc KEYTABLE=ko rd_LVM_LV=vg_sizone/lv_swap rd_NO_DM rhgb quiet
        initrd /initramfs-2.6.32-642.6.1.el6.x86_64.img

如果 3.13.6 内核崩溃。我想要启动 2.6.32

总的来说,如果你想启动一个新的linux,内核映像、ramdisk和linux驱动程序应该注意。

我没有发现你的 grub 配置有任何问题,你为什么不试一试?

在前面加一行:

默认=1


如果默认=0,启动3.13.6

并非所有场景都可以做到这一点;然而,如果你想为你的服务器测试一个新的内核,如果不工作就回退到旧的,你可以得到。

我假设你现在是用你的旧内核启动的,想测试你新编译的内核。
为新内核创建菜单项后,请确保将 'panic=N' 添加到内核命令行参数;这将确保在内核崩溃 N 秒(如果 N 大于零)后重新启动。

然后,

将当前启动的内核设置为默认内核:

# grub-set-default <current kernel menuentry number>
# grub-reboot <new kernel menuentry number>

这里注意菜单项编号是从0开始的。 然后,重新启动系统。

# reboot

这将启动到新编译的内核并重新启动到旧内核,以防出现内核错误。