news 2026/7/23 0:47:25

linux操作系统内核编译 - 过程参考

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
linux操作系统内核编译 - 过程参考

文章目录

    • 一、环境说明
    • 二、编译的过程
    • ( 精简内核编译,只编译部分必要的部分 )
    • 三、怎么设置默认重启的内核

一、环境说明

环境:

华为openEuler操作系统, 内核:linux6.6

源码下载:

https://gitee.com/openeuler/kernel 分支 OLK6.6

下载命令:

git clone -b OLK-6.6 https://gitee.com/openeuler/kernel

二、编译的过程

1.执行uname -r查看本操作系统的内核;

$ uname -r 6.11.0-19-generic

2.复制.config文件:
在/boot下会保存当前操作系统的默认的.config文件,将这份文件复制到自己下载好的kernel文件夹下:

cp /boot/config-$(uname-r) my-kernel/

3.配置内核,修改内核版本名字:

$make menuconfig

在弹出的页面中找到 General setup->Local Version

进入General setup 进如Local version,然后写入自己的版本号,比如 `‘-csn111’`

注意名字前面加个”-“, 比如 ’-csn111‘(下图可见最终编译的版本号)
其他的配置项修改可以选择直接修改 .config 文件或者 在该图形界面中进行配置
4.开始编译并安装

make -j$(nproc) make INSTALL_MOD_STRIP=1 modules_install -j$(nproc) make install -j$(nproc)

( 精简内核编译,只编译部分必要的部分 )

lsmod > ./modules_status.txt make LSMOD=$HOME/modules_status.txt localmodconfig make modules_install -j$(nporc) make install -j$(nproc)

三、怎么设置默认重启的内核

说明: 要区别不同的操作系统,openEuler默认配置项是放在 /boot/grub2/grubenv,其他不一定在这
请注意不要直接删除或者重命名这份默认文件,因为grubenv是有软链接的,直接修改该文件默认重启可以生效,但更推荐下面的方法
1.首先查找当前操作系统有哪些可选的作为默认启动项的内核:

awk -F\' '$1=="menuentry" {print i++":"$2}' /boot/grub2/grub.cfg

2.设置默认重启的数字:

grub2-set-default + 数字

3.重启:reboot

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 14:17:37

3个核心技巧让你彻底掌握Obsidian智能模板神器Templater

3个核心技巧让你彻底掌握Obsidian智能模板神器Templater 【免费下载链接】Templater A template plugin for obsidian 项目地址: https://gitcode.com/gh_mirrors/te/Templater 你是否厌倦了每天重复输入相同的笔记格式?是否希望笔记能够自动填充日期、天气、…

作者头像 李华
网站建设 2026/7/14 14:17:38

协方差矩阵:轻松掌握ML-From-Scratch中的数据关系分析技巧

协方差矩阵:轻松掌握ML-From-Scratch中的数据关系分析技巧 【免费下载链接】ML-From-Scratch Machine Learning From Scratch. Bare bones NumPy implementations of machine learning models and algorithms with a focus on accessibility. Aims to cover everyth…

作者头像 李华
网站建设 2026/7/14 14:17:36

Wireshark实战:ICMP协议深度解析与网络诊断技巧

1. ICMP协议基础:网络世界的"信鸽系统" ICMP协议就像是互联网中的信鸽系统,专门负责传递各种控制消息。想象一下,当你寄出一封信(数据包)却无法送达时,邮局(路由器)会通过…

作者头像 李华