默认情况下,centos 7 附带的内核版本为 3.10.x。安装centos 7后,我已将内核升级到4.6.x,这是最新的稳定版本。我的系统是远程的。首先,每次内核更新/升级时重新启动对我来说非常昂贵。有什么解决办法吗?其次,如果我重新启动,仍然会加载 3.10.x 版本。哪里有问题 ?
我使用以下命令进行升级
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml
reboot
答案1
您需要编辑并重建 grub 配置:
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
这将确保 grub 从最新安装的内核启动。
答案2
这似乎是最新内核模块更新的常见问题。
CentOS 软件包维护者似乎遗漏或修改了构建步骤初始化文件系统安装新内核后。您将面临无法启动的系统。
解决此问题的步骤是:
引导至先前的内核版本(在救援模式下)。
重新运行
dracut
较新的内核(此步骤会重建初始化文件系统)。awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg # <-- version list dracut -f initramfs-{specific version here}.x86_64 dracut -f initramfs-2.6.32-71.el6.x86_64.img 2.6.32-71.el6.x86_64 # <-- example
重新运行
grub2-mkconfig
,或者手动编辑grub(此步骤指定初始化文件系统将用于新内核的图像)。awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg grub2-set-default {number} # <-- choose your preferred kernel to startup (0, 1, 2, etc.) grub2-set-default 0 # <-- example grub2-set-default 1 # <-- example
重启。