网站首页 > 资源文章 正文
1.编译环境
ubuntu 16.04.6 LTS,当前linux版本号是4.15.0-142-generic
- generic:当前内核版本为通用版本,另有表示不同含义的server(针对服务器)、i386(针对老式英特尔处理器)
- x86_64:采用的是64位的CPU
- SMP:对称多处理机,表示内核支持多核、多处理器
- Tue Apr 13 09:27:15 UTC 2021 内核的编译时间
Ubuntu——系统版本查看_ubuntu版本-CSDN博客
Linux内核版本介绍与查询_centos 查看arm-CSDN博客
2.linux内核源码获取
路径:https://git.kernel.org/
本次使用的版本https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/?h=v5.10.188
解压.xz文件:xz -d linux-5.10.188.tar.xz
解压文件:tar -xvf linux-5.10.188.tar -C ./linux_5 解压到当前目录下的linux_5目录下。
3.下载编译需要使用到的命令工具
sudo apt-get update
sudo apt-get install make
sudo apt-get install gcc g++
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install libncurses-dev
sudo apt-get install build-essential
sudo apt-get install kernel-package
sudo apt-get install libssl-dev
sudo apt-get install libc6-dev
sudo apt-get install bin86
sudo apt-get install qttools5-dev
sudo apt-get install libelf-dev
Minimal requirements to compile the Kernel The Linux Kernel documentation
ubuntu上编译Linux内核步骤_ubuntu编译内核-CSDN博客
Linux内核编译与安装(完整过程)【Ubuntu18.04下】_编译linux内核-CSDN博客
4.清理
首次编译可以不用清理,编译之后如果想完整重新编译,可以使用清理命令
此路径下执行:~/Desktop/linux_5/linux-5.10.188
# make mrproper会删除配置的.config以及其他备份
sudo make mrproper
# make clean会删除编译过程中生成的中间文件和内核镜像文件
sudo make clean
5.内核配置
sudo make menuconfig
6.编译
可以单独编译或者全部编译
单独编译:
# 编译内核镜像
sudo make bzImage -j6
# 编译其他所有模块
sudo make modules -j6
全部编译:
# 编译内核镜像及其他所有模块,-j指定6个线程进行编程,提升编译效果
sudo make -j6
编译报错提示空间不足
unbuntu硬盘扩容:
1.先到/var/cache/apt/archives 中删掉一部分下载的工具
2.安装分区工具 sudo apt-get install gparted,使用分区工具扩容
ubuntu硬盘空间不足,扩容_ubuntu重新分配磁盘空间_树先生~的博客-CSDN博客
Linux内核开发——编译Ubuntu 20.04内核代码_ubuntu编译内核_-飞鹤-的博客-CSDN博客
7.安装内核
(1) 将生成的bzImage文件和System.map文件拷贝到/boot/目录下
sudo cp System.map /boot/System.map-5.10.188
sudo cp arch/x86/boot/bzImage /boot/vmlinuz-5.10.188
(2)建立镜像文件:
sudo mkinitramfs /lib/modules/5.10.188 -o /boot/initrd.img-5.10.188
(3)更新GRUB:
更新grub文件,命令会自动检测boot目录中的initrd文件,将最新的initrd文件设置为默认启动版本。
sudo update-grub
8.重启 sudo reboot
重启在Advanced options for ubuntu中选择5.10.188内核
出现的问题:在重启的时候,Ubuntu会出现”System is deadlocked on memory”
解决办法
关闭虚拟机,打开Ubuntu设置,选择”内存“增大到4GB(4096MB),然后重新启动ubuntu。
Linux内核开发——编译Ubuntu 20.04内核代码_ubuntu编译内核_-飞鹤-的博客-CSDN博客
9.重启后查看内核版本信息
内核版本为5.10.188,说明编译的新内核ok。
参考:(1)csdn 相关文章,链接已给出
(2)《linux内核设计与实现》第三版
- 上一篇: 开发板的第 1 个驱动程序
- 下一篇: 腾讯云发布五款数据库新品
猜你喜欢
- 2024-12-03 开发板的第 1 个驱动程序
- 2024-12-03 FM20S用户手册-Linux系统使用手册
- 2024-12-03 电脑主机灰尘多,用吹风机吹了吹,开不了机了怎么办?
- 2024-12-03 求助!关于电脑BIOS.
- 2024-12-03 11种电脑开机常见报错:开机就是这个画面,无法动弹是怎么回事?
- 2024-12-03 电脑开机有显示,但进不去系统
- 2024-12-03 开机出现an operating system wasnt found原因分析及解决方法
- 2024-12-03 计算机在开机过程中的故障有哪些,需要怎么处理?
- 2024-12-03 新组装电脑因硬盘入不了系统?
- 2024-12-03 常见的12种电脑开机黑屏的原因与解决思路
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)