Linux内核编译更新

本文详细介绍了如何在Ubuntu 20.04上自定义编译Linux内核4.4.259,包括配置内核、编译与安装、添加系统调用等步骤。在编译前需要安装必要软件,并根据虚拟机原有配置进行内核配置。编译过程中可能出现modinfo错误,但不影响内核安装。添加了一个名为printnumber的系统调用,通过用户态程序验证其功能,成功实现了系统调用的添加。
摘要由CSDN通过智能技术生成

一 配置的目的及作用

决定将内核的各个功能系统编译进内核还是编译为模块还是不编译。

  1. 自己定制编译的内核运行更快(具有更少的代码)
  2. 系统将拥有更多的内存(内核部分将不会被交换到虚拟内存中)
  3. 不需要的功能编译进入内核可能会增加被系统攻击者利用的漏洞
  4. 将某种功能编译为模块方式会比编译到内核内的方式速度要慢一些

二 内核的编译与安装

1 环境准备

ubuntu版本:2004

原来的内核版本:5.8.0

待编译的内核版本:4.4.259

正式编译前先安装一些软件:

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

2 配置内核

进入下载的内核源码根目录,将自身虚拟机的配置文件拷贝到当前目录下并重命名为.config

cp config-5.8.0-43-generic .config

如果没有配置文件,内核编译会不成功。

可以使用 make menuconfig 来对内核编译进行其他的配置,但我是直接就用的虚拟机自身的配置文件

3 编译和安装

3.1 编译内核
make -j4

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

3.2 安装模块

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值