关于内核说明:
版本性质:主分支ml(mainline),稳定版(stable),长期维护lt(longterm)
版本命名格式:“A.B.C"
A代表内核版本号
B代表内核主版本号
C代表内核次版本号
一、检查内核版本
[root@web1 ~]# uname -r
3.10.-.el7.x86_64
[root@web1 ~]# cat /etc/redhat-release
CentOS Linux release 7.3. (Core)
[root@web1 ~]#
二、如何升级内核
这里只关注centos7如何升级
1、导入elrepo的key然后在安装elrepo的yum源:
rpm -import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ###key
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm ###yum源
2、查看可用的内核相关的包
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
[root@web1 ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
Loaded plugins: fastestmirror, langpacks
elrepo-kernel | 2.9 kB ::
elrepo-kernel/primary_db | 1.8 MB ::
Loading mirror speeds from cached hostfile
* elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
Available Packages
kernel-lt.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 4.4.-.el7.elrepo elrepo-kernel
15 kernel-ml.x86_64 5.1.5-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 5.1.-.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 5.1.-.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 5.1.-.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 5.1.-.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 5.1.-.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 5.1.-.el7.elrepo elrepo-kernel
perf.x86_64 5.1.-.el7.elrepo elrepo-kernel
python-perf.x86_64 5.1.-.el7.elrepo
3、安装内核(我这里用最新的吧)以后如何继续升级直接用下面这条命令就可以了
yum -y --enablerepo=elrepo-kernel install kernel-ml.x86_64 kernel-ml-devel.x86_64
三、修改grub中默认的内核版本
内核升级完成后,还需要调整
1、查看内核启动顺序
awk -F\' '$=="menuentry " {print $}' /etc/grub2.cfg
通过此命令可以看到新内核顺序为0
[root@web1 ~]# awk -F\' '$=="menuentry " {print $}' /etc/grub2.cfg
CentOS Linux (5.1.-.el7.elrepo.x86_64) (Core)
CentOS Linux (3.10.-.el7.x86_64) (Core)
CentOS Linux (-rescue-b7671beb75f14e95b5a58975dae3a897) (Core)
You have new mail in /var/spool/mail/root
[root@web1 ~]# vim /etc/default/g
google-chrome grub
2、修改内核启动顺序为0
vim /etc/default/grub
[root@web1 ~]# vim /etc/default/grub GRUB_TIMEOUT=
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
5 GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0 "
GRUB_DISABLE_RECOVERY="true"
3、接着用命令来创建内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
[root@web1 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.1.-.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.1.-.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.-.el7.x86_64
Found initrd image: /boot/initramfs-3.10.-.el7.x86_64.img
Found linux image: /boot/vmlinuz--rescue-b7671beb75f14e95b5a58975dae3a897
Found initrd image: /boot/initramfs--rescue-b7671beb75f14e95b5a58975dae3a897.img
done
4、重启查看变化
init 6或者reboot
[root@web1 ~]# init
[root@web1 ~]# uname -r
5.1.5-1.el7.elrepo.x86_64
[root@web1 ~]# cat /etc/redhat-release
CentOS Linux release 7.3. (Core)
[root@web1 ~]#
参考:升级Centos 7/6内核版本到4.12.4的方法,还介绍了无法上网机器的升级方法