博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1、Linux内核的配置和编译
阅读量:5254 次
发布时间:2019-06-14

本文共 1043 字,大约阅读时间需要 3 分钟。

Linux内核的配置和编译

之所以要对内核进行配置,这是很多都是硬件的需求,和软件的需求。就是选择自己需要的,去掉自己不要的。

上面有两种配置方法,但是make config是几乎不用的。他是一问一答的配置方法。很费时间。所以,都是采用make menuconfig来配置内核的。

 

 

 

 

接下来是配置的简单实例:

  1. 运行make menuconfig:

    然后选择倒数第二项Load an Alternate Configuration File:

    选择我们准备好的配置文件:(放在该linux源码的根目录的):

    然后保持退出。这样,我们就完成了一个配置文件的导入。接下来我们就可以在此基础上进行修改,去掉我们不要的,加上我们想要的功能。最后,保存修改退出。这样就配置好了一个内核。

    然后执行make bzImage。进行内核编译。

    编译好的内核文件存放在/arch/x86/boot/。如上所显示的。

     

     

     

     

     

     

     

     

     

    接下来就是编译内核模块:make modules。[M]表示的就是内核模块。

    经过差不多一个多钟,内核模块编译完成:

    编译完成的内核模块是散落在我们linux内核的各个文件夹里的。所以我们需要把他们收集起来,打包。

    在打包前我们先看一下/lib/modules目录:

    这是原来系统的。

    接着我们执行:make modules_install这个命令:

    开始安装内核模块:

    这其实不是在安装,是在将散落的内核模块集中到我们的/lib/modules目录下面。

    完成之后,我们查看一下/lib/modules目录:

    我们看到增加了一个目录:2.6.39.里面就是我们编译好的内核模块。

    接下来就是将它打包:

    命令:

    最后在/boot/的目录下会有:initrd.img-2.6.39:

     

    接着将内核拷贝到该目录:

    最后就是修改/boot/grub.conf/grub.cfg增加刚才内核的启动项。

    保存退出,重新启动。

    登陆时选择从我们刚才制作的内核启动。登陆后,使用uname -r 命令查看内核的版本号:

    这个就是我们刚才制作的内核。我们看见,所有的文件资料都没有变化。这是我们更换的只是运行在内存的内核,而运行在硬盘/flash的文件系统没有变化。

     

    我们清理的就是在配置和编译的时候产生的中间文件。Make clean是清除.o文件,Make distclean是清除所有生成的的中间文件。

转载于:https://www.cnblogs.com/FORFISH/p/5188420.html

你可能感兴趣的文章
微信智能开放平台
查看>>
ArcGIS Engine 中的绘制与编辑
查看>>
Oracle--通配符、Escape转义字符、模糊查询语句
查看>>
子网划分讲解及练习(一)
查看>>
c# 文件笔记
查看>>
第一页 - 工具的使用(webstorm)
查看>>
The Number of set-hdu-3006
查看>>
ssh 免签登录 亲测可以
查看>>
Linux 进程资源用量监控和按用户设置进程限制
查看>>
IE浏览器整页截屏程序(二)
查看>>
D3.js 之 d3-shap 简介(转)
查看>>
制作满天星空
查看>>
MyBatis日记(三):戏说MyBatis配置文件
查看>>
类和结构
查看>>
CSS3选择器(二)之属性选择器
查看>>
【前端统计图】echarts多条折线图和横柱状图实现
查看>>
thinkphp save()方法没有数据,保存失败解决办法
查看>>
★用辩证数学解答“缸中之脑”
查看>>
使用SSM架构的使用,打算使用json
查看>>
支付宝红包唤起 支付宝自动搜索
查看>>