如何编译安装Linux内核

操作系统环境

  • VMware workstation15 Pro
  • ubuntu18.04 LTS
  • 待编译内核5.3.10版本

内核下载地址

kernel.org

环境配置

在正式编译前需要安装部分软件。

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

解压缩

解压缩刚刚下载好的内核压缩包。

tar -axf linux-5.3.10.tar.xz
cd linux-5.3.10

配置内核

在正式编译内核之前,我们首先必须配置需要包含哪些模块。实际上,有一些非常简单的方式来配置。使用一个命令,你能拷贝当前内核的配置文件,然后使用可靠的 menuconfig 命令来做任何必要的更改。

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

上述命令的意思就是拷贝对应当前内核配置到当前目录下并重命名为.config(文件名前加.意思为隐藏文件)。

可以自行查看下uname -r的输出:

uname -r

之后执行命令:

make menuconfig

在虚拟机下有可能提示会因为屏幕太小而无法显示menuconfig而执行失败。要确保虚拟机下的显示面积足够大。

显示如下:

在这里可以选择启用或者禁用一些模块。如果你不知道该如何选择的话,默认退出即可。

编译和安装

退出menuconfig后,在命令行中输入

make -j4

命令即可开始编译。-j4意思是并发执行,可以提高速度,一般情况 下不要多于CPU核数。这个命令的执行会耗费很长时间。

编译完成之后首先安装模块,命令为:

sudo make modules_install

其次安装内核,命令为:

sudo make install

启用内核作为引导

输入下列命令将内核作为引导,将数字更改为你自己编译的版本号:

sudo update-initramfs -c -k 5.3.10

下面更新一下grub:

sudo update-grub

之后重启即可在启动界面选择需要启动的内核。如果看不到启动选择界面,请执行以下操作:

输入命令:

sudo vi /etc/default/grub

将文件修改为以下模式:(注释掉hidden那一行,将timeout更改为较大值,这里改为了10)

之后执行

sudo update-grub

重启即可见到下面菜单,选择advanced,进入后选择刚编译安装好的内核进入即可。

确认内核版本

说明内核安装成功。

参考资料

  • 如何编译 Linux 内核
  • linux内核编译

原文地址:https://www.cnblogs.com/harrypotterjackson/p/11846222.html

时间: 2024-11-10 11:26:59

如何编译安装Linux内核的相关文章

编译安装linux内核步骤

编译安装linux内核步骤: 一.获取内核源码 源码网址:www.kernel.org 二.解压内核源码 首先以root帐号登录,然后进入/usr/src子目录.如果用户在安装Linux时,安装了内核的源代码,则会发现一个linux-x.y.z的子目录.该目录下存放着内核x.y.z的源代码.此外,还会发现一个指向该目录的链接linux.删除该连接,然后将新内核的源文件拷贝到/usr/src目录中,并解压:     # tar zxvf Linux-2.3.14.tar.gz 文件释放成功后,在/

linux内核系列(一)编译安装Linux内核 2.6.18

1.配置环境 操作系统:CentOS 5.2 下载linux-2.6.18版本的内核,网址:http://www.kernel.org 说明:该编译文档适合2.6.18以上的Linux内核版本,只需所编译的 Linux内核版本不能低于Linux操作系统自身的内核版本,不然会遇到很多问题:   2.开始编译 cp  ./ linux-2.6.18.tar.gz  /usr/src/ tar –zxvf ./linux-2.6.18.tar.gz cd /usr/src/linux-2.6.18 /

安装 Linux 内核 4.0

大家好,今天我们学习一下如何从Elrepo或者源代码来安装最新的Linux内核4.0.代号为‘Hurr durr I'm a sheep’的Linux内核4.0是目前为止最新的主干内核.它是稳定版3.19.4之后发布的内核.4月12日是所有的开源运动爱好者的大日 子,Linux Torvalds宣布了Linux内核4.0的发布,它现在就已经可用了.由于包括了一些很棒的功能,例如无重启补丁(实时补丁),新的升级驱动,最新的 硬件支持以及很多有趣的功能都有新的版本,它原本被期望是一次重要版本.但是实

将MPLS编译进linux内核中

系统环境:linux kernel 2.6.35.(此环境是上一篇文章中将ubuntu内核替换后的环境) 编译过程如下: 1)首先需要下载patch文件:linux-kernel-v2.6.35-mpls1.980.patch.下载链接: http://ftp.jaist.ac.jp/pub/sourceforge/m/project/mp/mpls-linux/mpls-linux/Patches/linux-kernel-v2.6.35.13-mpls1.980.patch 或者: http

【转】6.4.6 将驱动编译进Linux内核进行测试

原文网址:http://www.apkbus.com/android-98520-1-1.html 前面几节都是将Linux驱动编译成模块,然后动态装载进行测试.动态装载驱动模块不会随着Android系统的启动而自动装载,因此Android系统每次启动都必须使用insmod或modprobe命令装载Linux驱动模块. 对于嵌入式系统(包括嵌入式Android.嵌入式Linux等)一般都采用将Linux驱动编译进内核的方式.这样做虽然没有动态装载灵活,但Linux驱动会随着Android的启动而

CentOS 6.9编译安装新版本内核

一.编译安装前准备: 1.安装依赖包组:# yum -y groupinstall "Server Platform Development""Development Tools" 2.从https://www.kernel.org/下载需要编译的内核源码包linux-3.10.105.tar.xz,并上传至服务器 二.编译安装新版本内核linux-3.10.105.tar.xz: 1.查看系统原有内核版本:# uname -r  -->  2.6.32-69

教你如何快速编译安装新内核

随着内核版本的更新换代,你是否有觉得自己的内核版本有些低了呢?如果有的话,没关系,今天小编就来教大家如何编译安装新的内核. 在编译安装内核之前先检查我们的虚拟机所在的磁盘空间,预留空间10G以上,不然编译安装内核无法完成.下面我们就开始内核的编译安装吧. (1)下载源码文件 先在内核官网(www.kernel.org/)上下载最新版本的内核到桌面上,然后rz拷到linux系统上,找到一个空目录如/app/tmp,将之移到/app/tmp中,然后再解包解压,就会生成一个目录 (2)准备文本配置文件

Ubuntu 下编译安装linux

1. 准备工作切换为管理员权限,sudo –i 输入用户密码 进入root 权限apt-get install build-essential kernel-package libncurses5-dev libqt3-headersbuild-essential (基本的编程库(gcc, make 等)kernel-package (Debian 系统里生成 kernel-image 的一些配置文件和工具)libncurses5-dev (meke menuconfig 要调用的) libqt

如何在Ubuntu/CentOS上安装Linux内核4.0

大家好,今天我们学习一下如何从Elrepo或者源代码来安装最新的Linux内核4.0.代号为‘Hurr durr I'm a sheep’的Linux内核4.0是目前为止最新的主干内核.它是稳定版3.19.4之后发布的内核.4月12日是所有的开源运动爱好者的大日 子,Linux Torvalds宣布了Linux内核4.0的发布,它现在就已经可用了.由于包括了一些很棒的功能,例如无重启补丁(实时补丁),新的升级驱动,最新的 硬件支持以及很多有趣的功能都有新的版本,它原本被期望是一次重要版本.但是实