git编译内核源码-Linux内核编译很简单,6步编译出自己的内核

在上面的文章中,我们多次提到了Linux内核,我们知道Linux内核是Linux操作系统的核心内容。 内核实现对硬件的管理,并为应用软件使用硬件提供套接字。

对于Linux开发者来说,内核学习和开发才是最终目标。 为此,我们明天首先介绍一下内核的编译

你需要知道的是,编译和安装Linux内核并不像想象的那么困难和复杂,尽管只需要几条命令就可以完成。

在本文中,我们将逐步解释如何从源代码编译和安装 Linux 内核。 需要说明的是,本指南是基于Ubuntu 18.04版本编译和安装的,其他发行版可能有所不同。

编译 Linux 内核‍

整个内核编译过程非常简单,并且内核编译花费的时间也比较长。 这主要是因为内核的代码较多。 事实上,如果你有一台强大的计算机,时间会短得多。 另外需要注意的是,建议在虚拟机环境下编译,以免出错导致系统出现问题。 如果在虚拟机上测试,建议系统分区和内核源码分区大小小于20GB。

第一步:下载源码

1.进入Linux内核官网,下载最新版本,或者其他版本的内核代码。 这是源代码的 tarball。​

2.假设我们现在是在Linux操作系统中,在命令行中输入以下命令来下载内核。

wget链接(因为链接会被视为广告,本文省略链接,请自行复制)

下载过程中可以看到下载进度,下载完成后的信息大致如下。

Step2:解压源码

压缩包下载完成后,可以使用tar命令进行解压

tarxvflinux-5.9.6.tar.xz

解压的时候可以看到文件列表,这个会很多,可能需要一段时间。

Step3:安装所需的软件包

安装编译工具及其他依赖软件包,在Ubuntu18.04环境下执行以下命令。

sudoapt-getinstallgitfakerootbuild-essentialncurses-devxz-utilslibssl-devbcflexlibelf-devbison

如果一切顺利,大约的安装输出将如下所示。

Step4:配置内核代码

在编译内核之前,我们可以配置内核源代码。 配置的目的主要是确定哪些模块将被编译到内核中。

1.进入源码目录

CDLinux-5.9.6

2. 将配置信息从当前机器的启动目录复制到源代码目录。 这一步的意思是我们编译的内核的配置采用与当前环境一致的配置。

cp -v /boot/config -$(uname -r).config

3、可以通过以下命令启动配置界面

制作菜单配置

该命令将运行一些脚本,然后打开配置界面

4. 下面是打开的配置界面。 可以看到它包含了所有的内核组件git编译内核源码,包括文件系统、网络、IO栈、虚拟化和设备驱动等,如果你不熟悉的话,不需要做任何改动。

Step5:编译内核

1.可以通过以下命令编译内核

制作-j10

里面的参数是并发数,一般可以是CPU的两倍。

2. 安装模块

sudomakemodules_install

3.安装内核

须藤make安装

安装完成后,会出现以下提示信息。

Step6:重启并验证版本

当上述步骤正确后,我们重新启动计算机,然后运行以下命令。

uname-夫人

此时可以看到内核版本已经是我们编译的版本了。

推理

通过前面的步骤git编译内核源码,我们就可以轻松编译出一个内核了。 如果内核模块开发得早的话,也会基于内核代码树,所以这是内核开发的基础。

可能出现的问题‍

编译内核时可能会遇到这个问题:

没有规则创建目标 debian/certs/debian-uefi-certs.pem,由 certs/x509_certificate_list 请求

只需编辑要编译的内核目录中的配置文件即可。简单的形式是执行以下命令

配置文件

然后找到CONFIG_SYSTEM_TRUSTED_KEYS并将其设置为空,如下所示。

CONFIG_SYSTEM_TRUSTED_KEYS=””

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 源码编译 git编译内核源码-Linux内核编译很简单,6步编译出自己的内核 https://www.wkzy.net/game/194130.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务