操作系统:Ubuntu和CentOS7中Linux内核编译(5.5.9版本)
操作系统:Ubuntu和CentOS7中Linux内核编译(5.5.9版本)
——————
——————
写在前面:make时报错磁盘容量不足,需要扩展容量
这是centos7扩展磁盘容量的方法
文末有一些可能出现的错误,可以参考
1、重启时报错:System is deadlocked on memory
2、menuconfig时报错:Your display is too small to run Menuconfig!
——————
——————
一、下载内核
1、下载最新版本的内核:https://www.kernel.org/
2、下载历史版本的内核:https://cdn.kernel.org/pub/linux/kernel/v5.x/
注意下载“linux-版本号.tar.xz”
二、解压文件
1、进入终端
2、进入root模式
Ubuntu下:
sudo su
CentOS7下:
su root
3、进入下载内核所在的文件夹(如:“下载”这个文件夹)
4、将内核文件解压到指定文件夹
输入命令:
tar -xvf linux-5.5.9.tar.xz -C /usr/src/redhat
三、安装编译需要的各种文件和工具
**注意:**一定要先安装这些,才不会报错,要不然过程会很繁琐!!(亲身经历)
1、Ubuntu版本下的命令
apt install libncurses5-dev libssl-dev
apt install build-essential openssl
apt install zlibc minizip
apt install libidn11-dev libidn11
apt install flex
apt install bison
2、CentOS7下的命令
yum install ncurses ncurses-devel
yum install openssl-devel
yum install elfutils-libelf-devel
yum install flex
yum install bison
四、配置文件
1、修改内核版本号
输入命令
vim Makefile
这三位数字分别对应版本号的5.5.9
可在最后一位数字(红点处)进行修改
2、生产图形化界面
输入命令:
注意:一定要页面最大化,终端的这个窗口也要尽量大,否则会报错
make mrproper#清除之前编译产生的中间文件
make menuconfig#生成图形化界面
然后出现以下界面
选择“Exit”,然后按回车键
再然后选择“yes”就可以了
五、编译内核
1、开始编译内核
输入命令
可以用j2、j4加快内核编译的速度
make
或者
make -j4//速度更快
注意:等待的时间很长,可能要两三个小时,期间要注意电脑不会自动关机之类的
2、安装内核模块
make modules
make modeules_install
3、安装内核
make install
五、启动内核
1、重启虚拟机
重启过程中,可能需要自己手动选择一下 刚刚编译的新内核系统
选择“高级选项‘
然后选择第一个(自己编译的内核的名字)的选项
2、验证是否成功
执行指令
uname -r
如果显示是自己的新内核,则成功
六、可能出现的问题
1、在重启的时候,Ubuntu会出现
”System is deadlocked on memory
解决办法
关闭虚拟机的电源
打开Ubuntu设置
选择”内存“
增大到4GB(4096MB)
2、make menuconfig时报错
将页面最大化
将终端这个窗口拉得尽量大