我使用的是 Red Hat 4 Enterprise Linux。但是,当我升级内核时,出现了错误。之后,当计算机使用新内核(red hat enterprise 2.6.9-100.el)启动时,我收到以下错误。
mkrootdev: label /1 not found
mount: error 2 mountıng ext 3
mount: error 2 mountıng none
switchroot : mount failed :22
umount /initrd/dev failed :2
kernel panic -not syncing :Attemped to kill init!
之后,当我尝试使用旧内核(red hat enterprise 2.6.9-42.el)引导系统时,系统成功引导。
我的问题是;当我重新启动系统时,它每次都会尝试使用新内核启动,因此我必须始终手动选择旧内核。如何摆脱这个问题?如何才能毫无问题地卸载新内核?或者如何才能毫无问题地使用新内核?
像这样的 grub.conf;
"default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux ES (2.6.9-100.ELsmp)
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-100.ELsmp ro root=LABEL=/1 rhgb quiet
initrd /boot/initrd-2.6.9-100.ELsmp.img
title Red Hat Enterprise Linux ES (2.6.9-100.EL)
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-100.EL ro root=LABEL=/1 rhgb quiet
initrd /boot/initrd-2.6.9-100.EL.img
title Red Hat Enterprise Linux ES (2.6.9-42.ELsmp)
root (hd0,0)"
答案1
让你的机器使用良好的内核运行,然后编辑 /etc/grub.conf 使其默认为你的良好内核,检查 grub 中显示“default=0”的行。更改该设置将解决您的手动干预启动问题。在您的情况下,默认值需要为“default=3”才能启动您旧的良好 smp 内核
然后查看使用 rpm -e 删除有问题的内核,可能会做一个测试(rpm -e --dry-run
答案2
这取决于安装/更新。我们谈论更新是因为我们更新了内核,但实际上,您必须安装新的内核。
如果您想在 grub 中同时选择两种选择,则必须使用安装内核而不是更新内核。
还 :
yum localinstall kernel.rpm
yum install kernel.rpm
rpm -ivh kernel.rpm
注意:rpm -ivh 内核和 rpm 通常会使 db yum 不同步。
请注意,切勿执行以下操作:rpm -Uvh kernel.rpm
注意:然而,“yum 更新内核”是因为她在其中包含一个保护,并保持旧版本运行和 2 版本除了运行 -> 3 内核(默认情况下)。但请记住,不要进行更新,而是进行安装(良好的做法)。所有这些都是为了允许在以前的内核上启动。
注意2:如果你只使用 rpm,需要做一些工作,比如编辑你的 grub.conf