编译安装Linux内核

实验前准备:在https://www.kernel.org/下载内核

这里我们下载的是:linux-4.14.10.tar.xz

du -sh /app/linux.tar/ 此命令可查看内核文件大小

编译完成后/lib/modules下会生成4.14.10版的内核

微信截图_20180103195506

1,tar xvf linux-4.14.10.tar.xz -C /app/
解压缩准备好的内核压缩文件到/app下生成一个linux.tar文件

微信截图_20180103200214

可以对比下原压缩文件与生成文件的大小,也就是相差10倍,所以编译之前还是要先考虑下自己的磁盘是否够用

微信截图_20180103200349微信截图_20180103200933

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就是字符界面下的一个窗口库

微信截图_20180103202340

微信截图_20180103202600

. . .
4,make menuconfig
进入字符界面下内核编译菜单

微信截图_20180103202916

general  setup —->Local version – append yo kernel release(追加到内核版本之后)

微信截图_20180103203746

4.14.10-之后就是自定义的内容也就是上面一步定义的
微信截图_20180103204126

配置完毕后选择exit退出即可
5,yum install elfutils-libelf-devel

微信截图_20180103204658

执行编译命令出现此提示,表示要编译这些功能但是没有库,所以就需要安装

微信截图_20180103204931
6,make -j 4 && for i in {1..10};do sleep 0.3; echo -e “\a”;done
安装编译

微信截图_20180103205047
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

(0)
liuyongweiliuyongwei
上一篇 2018-01-03
下一篇 2018-01-03

相关推荐

  • nginx的模块应用

    1.location的定义 (1)当location中午定义时,默认使用server中的相关定义。 (2)当locating中有了相关定义,此时则启用location中的定义的内容。 nginx -t检查配置文件是否有语法错误 nginx -s reload重载nginx (3)即使server中的root中的目录下有了/admin的目录,但是同时又在loc…

    Linux干货 2016-10-30
  • 浅谈Linux中的用户和组

    又到了周六,日常写博客的日子。 上周模模糊糊的写了第一篇博客,大概知道了怎么写,但是这周就比以往不同了,脑子中已经有了思路,那写起来就会更加详细易懂。 这周学了很多知识点,但是我想对Linux 用户和组进行详细的描述。 一、用户(Username/UID) 用户分为两种:管理员和普通用户     管理员root  UI…

    2017-07-22
  • 第一周作业

    作业

    Linux干货 2018-03-20
  • 字符串处理

      一.字符串处理 v bash 的字符串处理工具: (一)字符串切片: ${#var}: 返回字符串变量var 的长度 例: [root@lxc ~]# a="     " [root@lxc ~]# echo ${#a} 5 [root@lxc ~]# ${var:offse…

    Linux干货 2016-11-24
  • VIM使用总结

    VIM使用总结:     I,vim + [option] +filename 其中option为m时,文件以只读模式打开。                               &n…

    Linux干货 2017-06-05
  • 基于haproxy的全站https

          前一段时间新疆等地用户访问国务院官网,在首页上发现大量淫秽信息及广告,后反映给相关工作人员。经排查,并非是网站被劫持和入侵,而是运营商流量劫持导致的这个结果……此处且不论该时间后续事宜,作为一名优秀的运维工程师,我们面对运营商如此流氓的行为,应该怎么办? 当然是全站HTTPS了,目前,百度、阿…

    2017-05-18