当您使用yum
或apt-get
默认情况下安装新的RedHat发行版和基于Debian的发行版时,它们都会保留多个版本的内核。这被认为是一个好习惯,并且完全按照您描述的情况进行:如果最新内核出了问题,您可以始终重新引导,而在GRUB中,选择使用以前的内核之一进行引导。
在RedHat发行版,你控制内核的数量保持在/etc/yum.conf
与installonly_limit
设置。在我的新CentOS 7上,默认安装为5。
另外,如果在RedHat上从RPM软件包安装新内核,则应使用rpm -ivh
,而不是rpm -Uvh
:前者将旧内核保留在原位,而后者将替换旧内核。
Debian保留旧内核,但不会自动删除它们。如果需要释放引导分区,则必须手动删除旧内核(请记住至少保留以前的内核之一)。要列出所有内核安装和内核头文件包,请使用dpkg -l | egrep "linux-(im|he)"
。
回答您的问题- 同样,是否可能具有相同内核的2版本? - 对的,这是可能的。我现在无法在CentOS 6.5上进行检查,但是在CentOS 7上,我只需要复制与内核相关的/boot
目录文件并重新构建grub菜单,就可以得到所需的结果:
cd /boot
# Duplicate kernel files;
# "3.10.0-123.el7" is a substring in the name of the current kernel
ls -1 | grep "3.10.0-123.el7" | { while read i; \
do cp $i $(echo $i | sed 's/el7/el7.backup/'); done; }
# Backup the grub configuration, just in case
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.backup
# Rebuild grub configuration
grub2-mkconfig -o /boot/grub2/grub.cfg
# At this point you can reboot and see that a new kernel is available
# for you to choose in GRUB menu