一、环境准备
OS:centos7
cpu内核:2核
二、安装
Linux Kernel确认
[root@master ~]# uname -a
Linux master 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 202 0 x86_64 x86_64 x86_64 GNU/Linux
切换目录
[root@master ~]# cd /usr/src/kernels/
下载压缩包(下载速度慢的话可以直接点击链接下载,在放到对应文件夹/usr/src/kernels/)
[root@master kernels]# wget https://cdn.kernel.org/pub/linux/kernel/v5 .x/linux-5.7.1.tar.xz
解压
[root@master kernels]# ll linux-5.7.1.tar.xz
-rw-r--r-- 1 root root 112678972 8月 14 09:59 linux-5.7.1.tar.xz
[root@master kernels]# tar -xJvf linux-5.7.1.tar.xz
安装相关安装包
[root@master kernels]# yum -y install gcc ncurses-devel
[root@master kernels]# yum install make openssl-devel libelf libelf-devel elfutils-libelf-devel elfutils-devel -y
注意!下面这个地方会报错
[root@master kernels]# make menuconfig
make: *** 没有规则可以创建目标“menuconfig”。 停止。
原因是没有切换到对应目录,需要切换到下一级目录/usr/src/kernels/linux-5.7.1
[root@master kernels]# cd /usr/src/kernels/linux-5.7.1/
[root@master linux-5.7.1]# make menuconfig
HOSTCC scripts/basic/fixdep
UPD scripts/kconfig/mconf-cfg
HOSTCC scripts/kconfig/mconf.o
HOSTCC scripts/kconfig/lxdialog/checklist.o
HOSTCC scripts/kconfig/lxdialog/inputbox.o
HOSTCC scripts/kconfig/lxdialog/menubox.o
HOSTCC scripts/kconfig/lxdialog/textbox.o
HOSTCC scripts/kconfig/lxdialog/util.o
HOSTCC scripts/kconfig/lxdialog/yesno.o
HOSTCC scripts/kconfig/confdata.o
HOSTCC scripts/kconfig/expr.o
LEX scripts/kconfig/lexer.lex.c
/bin/sh: flex: 未找到命令
make[2]: *** [scripts/kconfig/lexer.lex.c] 错误 127
make[1]: *** [menuconfig] 错误 2
make: *** [sub-make] 错误 2
然后又出现报错,原因是没有安装flex
[root@master linux-5.7.1]# sudo yum install flex bison
安装完成后再次执行
[root@master linux-5.7.1]# make menuconfig
又出现报错,原因是虚拟机窗口太小了,把窗口放大再次执行。
Your display is too small to run Menuconfig!
It must be at least 19 lines by 80 columns.
make[2]: *** [menuconfig] 错误 1
make[1]: *** [menuconfig] 错误 2
make: *** [sub-make] 错误 2
然后回蹦出来一个界面,<Save>,<Ok>,<Exit>就可以了
然后下一步make,这个过程很长很长很长很长
[root@master linux-5.7.1]# make
[root@master linux-5.7.1]# make modules_install
[root@master linux-5.7.1]# make install
在重启虚拟机就可以啦。注意!!!重启虚拟机时选择内核,记得选择新版本内核!