下载新版本内核文件
4 y7 d) d1 O9 d+ h在www.kernel.org官网上下载stable版本linux-4.13.10.tar.xz内核文件。我是在Windows上下载文件直接拖到虚拟机桌面,然后打开终端使用指令cp linux-4.13.10.tar.xz /src/usr目录下的,或者可以使用
' c& ]: u" {% ^* r8 H; ywget 指令
解压缩到本地
/ x- L/ ~6 q l5 S, l5 j1 y h \xz -d linux-4.13.10.tar.xz 6 J$ b# K1 A! i: w; ]$ S& `
tar -xvf linux-4.13.10.tar
' R R% @5 y& y! F5 w* |- M在本地生成linux-4.13.10文件
准备配置文件
: N& Z# c8 S. q9 Q& n拷贝原内核文件到配置文件目录下 4 [/ b1 p$ a- c. j" t+ ?: e1 M: E1 f
cp /boot/config-3.10.0-514.el7.x86_64 /usr/src/linux-4.13.10
m. I0 O7 h# W" ?. a( Amv config-3.10.0-514.el7.x86_64 .config 2 ]0 X3 u v _ o) x5 {
从boot目录拷贝一个config文件过来主要是为了方便,这个文件里保存都是之前你在安装系统是内核所安装的模块,新安装的内核文件与原系统所带模块一致,安装时,也可自选模块
安装openssl-devel * {7 d5 z2 {5 i A
yum install openssl-devel,否则编译的时候会出现问题
make menuconfig ! v O5 z' d; ^3 a! u- w
会出现menu图形界面,自选模块,若按照之前的config文件进行安装,可跳过此步骤
编译 ( S5 ]+ v2 ?+ o# s
(1)make 单核编译 8 ~! ]! ^$ j! h0 `1 D( I
make -j 2 双核编译,只要看自身机器内核参数,多核编译会快一点
9 g0 P5 t# Z, f; _ I注意:make过程编译时间较长,我编译了三个小时左右,这主要是根据机器的配置 " ]' X$ P! y9 B$ D0 M7 [* D3 o
(2)make modules_install 安装模块
0 t$ D% w+ `7 e8 x(3)make install 安装内核相关文件
- e& _0 n5 n( {, [% j主要目的将所有的编译之后的内容拷贝安装到相应的目录
修改grub配置文件 5 ]( T5 B) D8 N: [6 t7 g
(1)查看grub文件内内核配置
) R3 j9 M) M& mcat /boot/grub2/grub.cfg |grep menuentry
7 u8 o, q) A4 P找到新安装的内核的全称为CentOS Linux (4.13.10) 7 (Core)
5 E: G# N$ n' ?. C(2)将新内核设置为默认启动项
' D E3 `9 u8 k2 N: H0 x* Fgrub2-set-default “CentOS Linux (4.13.10) 7 (Core)”
重启机器
# p! x8 o8 a! t& I9 V重启成功以后查看下机器的内核是不是该内核 3 `, U+ f2 r1 a8 M1 e; E
在虚拟机启动的时候出现多个内核引导项,选第一个进入系统
查看当前内核版本号
6 d+ I' x; m( _[root@localhost boot]# uname -r
3 N, a4 o* H7 M# C- X5 m4.13.10
9 P8 z) {% J7 n$ l! |" O" v