如何在Ubuntu、Debian、Mint、Kali、CentOS中手动下载、编译和安装定制的Linux内核?

Linux是一个操作系统内核,用户空间应用程序将围绕这个内核创建不同的发行版,如CentOS、Ubuntu、Mint和Kali。内核可以免费下载和使用,无需支付任何许可费。在本教程中,我们将学习如何从 内核.org 并用GCC进行编译。安装或升级内核的最后一步。

null

下载内核源代码

内核源代码最初保存在Kernel.org中。但是有很多镜像可以用来下载内核源代码。在这一步中,我们将使用 wget 命令如下。Linux内核的当前稳定版本是 4.17.6 .

$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.6.tar.xz
Download Kernel Source Code
下载内核源代码

安装GCC和其他要求

在Linux环境下,GCC是C和C++源代码最流行的编译器。我们将使用GCC为Linux内核编译和创建二进制文件。我们将安装 gcc 对不同的发行版使用以下命令。

Ubunt、Debian、Mint、Kali:

$ sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison

CentOS,软呢帽:

$ sudo yum install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
Install GCC and Other Requirements
安装GCC和其他要求

提取内核源代码

内核源代码有大量的文本类型数据,这可能会占用大量的磁盘空间和带宽。所以Linux内核代码是以压缩格式分发的,比如 xz , tar.gz 我们下载内核源代码 xz 所以我们需要提取源代码  与 tar 命令如下。

$ tar xvf linux-4.17.6.tar.xz

创建编译配置

我们将创建一个用于编译所需模块和内核特性的配置。

$ make menuconfig
Create Compile Configration
创建编译配置

用GCC编译Linux内核源代码并制作

我们将使用 make 命令wich将根据我们用 make menuconfig 命令。

$ make
Compile Linux Kernel Source Code with GCC and Make
用GCC编译Linux内核源代码并制作

更快地编译Linux内核

默认情况下,make命令将使用单个线程编译。但由于现代CPU有多个内核,这使得我们能够使用多个线程来运行并行编译 -j 选择 make 命令。在本例中,我们指定4个线程

$ make -j 4
Compile Linux Kernel Faster
更快地编译Linux内核

相关文章: Linux Bash环境变量

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享