Centos 7 安装或升级最新的内核

从技术上说,Linux 只是一个符合POSIX 标准的内核。它提供了一套应用程序接口(API),通过接口用户程序能与内核及硬件交互。仅仅一个内核并不是一套完整的操作系统。有一套基于 Linux 内核的完整操作系统叫作Linux 操作系统,或是GNU/Linux(在该系统中包含了很多GNU 计划的系统组件)。 – 转自wiki

在正常操作期间,内核负责执行两个重要任务:

  • 作为硬件和系统上运行的软件之间接口。
  • 尽可能搞笑地管理系统资源

1、检测已安装的内核版本

查看当前正在运行的内核版本

1
#uname -sr

Centos 7 默认内核版本是Linux 3.10.x

想知道最新版本可以去访问https://www.kernel.org网站

2、在Centos 7中升级内核

安装ELRepo源,使用这个第三方仓库,来将内核升级到最新版本

1
2
#rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
#rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

仓库启动后,使用下面命令列出可用的内核相关包:

1
#yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

找到kernel-ml.x86_64那行,可以看到中间显示的版本号

安装最新的主线稳定内核

1
#yum --enablerepo=elrepo-kernel install kernel-ml -y

3、设置grub默认的内核版本

1
2
3
4
5
6
7
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved //此处将saved设置为0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

然后重新创建内核配置

1
2
#grub2-mkconfig -o /boot/grub2/grub.cfg
#reboot //重启系统

重启后登录系统输入uname -sr验证内核是否升级成功