下载新版本内核文件 ! N7 m5 l) i: i9 O
在www.kernel.org官网上下载stable版本linux-4.13.10.tar.xz内核文件。我是在Windows上下载文件直接拖到虚拟机桌面,然后打开终端使用指令cp linux-4.13.10.tar.xz /src/usr目录下的,或者可以使用
8 U- L8 h. o ?( Wwget 指令
解压缩到本地
! J, ^' s t1 d8 E8 Y1 Jxz -d linux-4.13.10.tar.xz
4 U5 r h; ^: B% Ttar -xvf linux-4.13.10.tar . G# L, ^( Y6 B: y6 x- j
在本地生成linux-4.13.10文件
准备配置文件 % C6 J( e9 M8 Z1 _ g7 ?/ j
拷贝原内核文件到配置文件目录下 8 K. {/ ] X& Q2 W6 x* z4 e! B1 x
cp /boot/config-3.10.0-514.el7.x86_64 /usr/src/linux-4.13.10
' C) z( T) P g: ^% J: Dmv config-3.10.0-514.el7.x86_64 .config $ Z% P' f( f1 L0 G) F9 H! k! f
从boot目录拷贝一个config文件过来主要是为了方便,这个文件里保存都是之前你在安装系统是内核所安装的模块,新安装的内核文件与原系统所带模块一致,安装时,也可自选模块
安装openssl-devel
. q5 n$ V4 X5 k# }7 e0 p; u) kyum install openssl-devel,否则编译的时候会出现问题
make menuconfig
; ]9 M0 ~$ s) F3 R7 \) Y% ]会出现menu图形界面,自选模块,若按照之前的config文件进行安装,可跳过此步骤
编译
+ y% u* u- A0 X$ ](1)make 单核编译 * }, q; e8 n$ N% b3 P# u
make -j 2 双核编译,只要看自身机器内核参数,多核编译会快一点
/ j& c- h. Q: L0 z9 y注意:make过程编译时间较长,我编译了三个小时左右,这主要是根据机器的配置 4 f2 Y1 ]% D! \/ e# e1 {
(2)make modules_install 安装模块
+ X' O H3 ^. R; s(3)make install 安装内核相关文件 6 g1 }' u7 S/ i0 w$ K5 o+ n
主要目的将所有的编译之后的内容拷贝安装到相应的目录
修改grub配置文件 3 P& j; j( s" C# ?; w3 E
(1)查看grub文件内内核配置
: @" N6 |9 }5 v; M xcat /boot/grub2/grub.cfg |grep menuentry / C& v/ x6 j$ a
找到新安装的内核的全称为CentOS Linux (4.13.10) 7 (Core) ( ], F8 ^3 e% y$ p5 T! _$ ^
(2)将新内核设置为默认启动项
0 Q' X# A- t7 A! i6 X. Ugrub2-set-default “CentOS Linux (4.13.10) 7 (Core)”
重启机器 " K4 @. o" N9 N% ^3 v
重启成功以后查看下机器的内核是不是该内核
6 D- @/ G$ f" l6 t3 ]8 k在虚拟机启动的时候出现多个内核引导项,选第一个进入系统
查看当前内核版本号
) w* w9 \* U0 Q[root@localhost boot]# uname -r / l8 f z, n1 B
4.13.10
6 x& H5 j% @; F: D0 u! ]