实验前准备:在https://www.kernel.org/下载内核
这里我们下载的是:linux-4.14.10.tar.xz
du -sh /app/linux.tar/ 此命令可查看内核文件大小
编译完成后/lib/modules下会生成4.14.10版的内核
1,tar xvf linux-4.14.10.tar.xz -C /app/
解压缩准备好的内核压缩文件到/app下生成一个linux.tar文件
可以对比下原压缩文件与生成文件的大小,也就是相差10倍,所以编译之前还是要先考虑下自己的磁盘是否够用
2,cp /boot/config-3.10.0-514.el7.x86_64 .config
我们这里直接复制config-3.10.0-514.el7.x86_64到解压缩内核文件目录下linux-4.14.10中改名为config即可,这个文件就是定义了哪些功能要启用哪些功能不启用,是打到核心里还是还是放到独立模块中,因为硬件太多我们不选用一个一个设置了,因此我们就复制过来这个文件中稍作修改即可 ,可作为我们编译选择各个功能启用禁用的一个模板,我们接下来就是通过菜单make menuconfig来对他进行编辑,要实现这个功能我们首先要安装一些开发包组。
3,yum groupinstall Development tools
yum install gcc
yum install ncurses-devel 或者rpm -ivh /misc/cd/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm
安装这三个软件即可,ncurses就是字符界面下的一个窗口库
. . .
4,make menuconfig
进入字符界面下内核编译菜单
general setup —->Local version – append yo kernel release(追加到内核版本之后)
4.14.10-之后就是自定义的内容也就是上面一步定义的
配置完毕后选择exit退出即可
5,yum install elfutils-libelf-devel
执行编译命令出现此提示,表示要编译这些功能但是没有库,所以就需要安装
6,make -j 4 && for i in {1..10};do sleep 0.3; echo -e “\a”;done
安装编译
7,sudo yum install openssl-devel
编译过程中如果出现错误就安装这个包
8,make modules_install
安装模块在/lib/modules下生成一个新的文件目录 4.14.10-1.0.liulinux
9,make install
安装内核,生成新的内核文件,生成过程中会报错不用理会
此时编译完毕。
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90821