linux内核源码编译加制作rpm包
本章主要讲解实际操作步骤,具体理论知识可以自行百度
linux内核官网下载:
https://cdn.kernel.org/pub/linux/kernel/ (如图)

根据官网发布的信息分析,目前最新的是2020-12-27出的5.11版本,但不是稳定版本,稳点版本是5.10.3和5.9.16;根据图上可以看出,5.9.16已经不支持了(停止更新了),目前最新并且稳定的只有5.10.3。
本章-博主将下载linux-4.19.163进行操作编译(不建议直接使用最新的,稳定且应用广泛的应该是最适合的)
这里我使用的是腾讯云服务器:Centos7.6(也可以使用VM开一台虚拟机,磁盘最好是40G以上空间 [ 0.0内核越来越高,空间占比也越来越重 ! ] )

进入系统后,先下载4.19.163的源码包
#wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.163.tar.xz
下载完毕后,将包解压到/usr/src/下(这里解压到哪里都行,个人习惯解压到此位置)
#tar xvf linux-4.19.163.tar.xz -C /usr/src/
cd到解压目录下,进入解压出的目录里
#cd /usr/src/linux-4.19.163

图形化界面查看编译内容,可调试
# make menuconfig

这些都是内核中的模块,我们随便选一项进行解析:选Device Drivers(设备驱动)

会看到图上
- 带*号的行,是选中的意识,也就是,我们将把这个驱动模块编译到内核中去
- 带M号的意识是,它将以一个模块方式存在
- 为空[ ]的,意识是没有使用此功能
(实际在一些做嵌入式系统工作中,会根据需要,选择很少的功能,选的越少,启动越快,也会相对稳定)
这里我们不做改动,默认即可,退出后,在当前目录下,开始编译
#make && make bzImage (时间较长可以,根据自己系统配置情况可以选用 # make -j4) #编译安装
#make modules_install #加载模块
#make install #最后一步安装kernel
这里完成后,会自动帮我们修改好grub文件信息,不用自己再做修改了
#reboot
重启机器即可
================================================================
如需制作RPM内核安装包,就不需要运行以上Make步骤,解压后进入目录
# make rpm
(时间较长)
完成后,rpm包生成位置(一般会在/root/下):
# cd /root/rpmbuild/
不是本章内容,回忆补充:工作中需要快速部署,并且做成rpm包,使用fpm 来做成rpm 包
## fpm -s dir -t rpm -n 包名 -v 1.16.1 -d '部署需要的依赖包,以“,”号隔开添入' -f --post-install 配置脚本 启动脚本
linux内核源码编译加制作rpm包的更多相关文章
- Xilinx-Zynq Linux内核源码编译过程
本文内容依据http://www.wiki.xilinx.com网址编写,编译所用操作系统为ubuntu 14 1.交叉编译环境的安装配置 1)http://www.wiki.xilinx.com/I ...
- 利用src.rpm包修改源码后重新制作rpm包
1. 下载 .src.rpm包.例:https://repos.fedorapeople.org/repos/openstack/EOL/openstack-grizzly/epel-6/openst ...
- linux内核源码注解
轻松学习Linux操作系统内核源码的方法 针对好多Linux 爱好者对内核很有兴趣却无从下口,本文旨在介绍一种解读linux内核源码的入门方法,而不是解说linux复杂的内核机制:一.核心源程序的文件 ...
- 和菜鸟一起学linux内核源码之基础准备篇
来源:http://blog.csdn.net/eastmoon502136/article/details/8711104 推荐阅读:linux内核源码最初版linux内核源代码,简单易懂,适合初学 ...
- Linux内核源码特殊用法
崇拜并且转载的: http://ilinuxkernel.com/files/5/Linux_Kernel_Source_Code.htm Linux内核源码特殊用法 1 前言 Linux内核源码主要 ...
- ubuntu下linux内核源码阅读工具和调试方法总结
http://blog.chinaunix.net/uid-20940095-id-66148.html 一 linux内核源码阅读工具 windows下当然首选source insight, 但是l ...
- Linux基础系列—Linux内核源码目录结构
/** ****************************************************************************** * @author 暴走的小 ...
- Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7)【转】
原文地址:Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://bl ...
- Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7)【转】
原文地址:Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.c ...
- Linux内核源码分析方法
一.内核源码之我见 Linux内核代码的庞大令不少人“望而生畏”,也正因为如此,使得人们对Linux的了解仅处于泛泛的层次.如果想透析Linux,深入操作系统的本质,阅读内核源码是最有效的途径.我们都 ...
随机推荐
- RIDE,如何指定report,log,output的存放位置
创建测试用例,执行后,report.html,log.html,output.txt 会默认存放到 C:\Users\你的用户名\AppData\Local\Temp下, 例如我的存放在 如果要指定存 ...
- Wordpress指定关键词手动添加链接
方法:网站后台->外观->编辑->找到functions.php文件 wp-content/themes/当前外观/functions.php 在当前外观的functions.php ...
- chrome驱动版本与python不一致时
图片: 解决办法: 1.先去chrome浏览器找到版本号:在chrome找到帮助-关于Google chrome 2.通过网址:https://npm.taobao.org/mirrors/chrom ...
- PyCharm如何实现控制台换行显示
举个例子 我现在想要看输出结果的所有数据然后再控制台输出的信息如下: 本来输出的内容有很多,但由于只显示了一行,因此想要看全部的内容还需要拖拉滚动条,挺麻烦的,而且看着也不方便,怎么让控制台信息全都直 ...
- C# 变量和表达式
变量的命名: 第一个字符必须是字母.下划线或@: 其后的字符可以是字母.下划线或数字. 注意:区分大小写. 变量的类型: 数值类型 1.整数类型 byte.short.int.long sbyte.u ...
- clearfix解决高度塌陷和外边距重合问题
- XenForo论坛安装
1.下载安装程序,程序可以到qq群里面找,或者是联系我 2.域名+/install安装 3.汉化后台,访问https://www.cnxfans.com/resources/xenforo-2-x.1 ...
- Java-如何打包下载成.zip文件
打包下载成.zip文件 项目背景 公司使用vue + SpringBoot实现批量下载功能 今天在调试批量下载这个功能.打包成.zip文件时,在返回给前端浏览器出现报错信息: 后端报错: ERROR ...
- 和为K的子数组
给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的连续子数组的个数 . /** * @param {number[]} nums * @param {number} k ...
- 【博客】如何在Github上创建博客
[博客]如何在Github上创建博客 1. 安装nodejs windows安装npm教程--nodejs 2. 安装hexo npm install -g hexo-cli 3. 搭建博客 $ he ...