内核必须懂(三): 重编Ubuntu18.04LTS内核4.15.0

2023-05-16

目录

  • 前言
  • 编译前准备
  • 编译
  • 安装
  • 重启之后
  • 最后

前言

之前在写系统调用的时候也说过, 但是当时理解有限, 写的不好. 这次再重新编译内核, 分享经验.


编译前准备

首先补包:

sudo apt-get install build-essential kernel-package libncurses5-dev libssl-dev
复制代码

中途可能会看到如图, 建议保持版本即可:

打开grub文件, 由于我的是单Ubuntu系统, 不是常见的Win+Ubuntu双系统, 所以开机选择系统的选项就默认隐藏了, 需要手动打开, 即注释掉第7行:

sudo vim /etc/default/grub
复制代码

然后更新下grub:

sudo update-grub
复制代码

然后下载源码, 这里推荐阿里的镜像:

这里我在Home下建立了目录, 解压源码到下面:

sudo tar -zxvf linux-4.15.tar.gz
复制代码

然后拷贝配置文件, 其实这就是Ubuntu18.04.1LTS自带的配置文件, 这么做的好处就是稳, 如果你知道自己修改的内核配置是什么, 也同样可以在这个原有编译基础上修改. 当然, 现在你应该在解压的源码下面:

sudo cp /boot/config-4.15.0-46-generic .config
复制代码


编译

如果你之前编译过, 建议先sudo make mrproper进行清理, 尤其是之前编译失败了. 然后就开始编译, 至少两个小时吧:

sudo make-kpkg clean
sudo make-kpkg --initrd kernel-headers kernel_image
复制代码

安装

然后你会发现上层目录中多了两个deb包, 安装它们:

sudo dpkg -i *.deb
reboot
复制代码


重启之后

重启之后使用uname -r查看内核版本号, 发现已经改成4.15.0:

之前默认内核如图:

当然了, 不只是内核号变了, 还多了些内容, 在/usr/src下面多了源码文件夹和头文件文件夹:

build和source都指向源码目录, kernel里面则是编译好的模块:

/boot下同样增加了自编译内核的相关文件:

最后看到/boot/grub/grub.cfg中多了自编译内核的启动信息:


最后

内核篇章很久没更新了, 重编内核是基础. 喜欢记得点赞, 有意见或者建议评论区见哦~

转载于:https://juejin.im/post/5c937e5b51882533de496bff

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内核必须懂(三): 重编Ubuntu18.04LTS内核4.15.0 的相关文章

  • 开源自主导航小车MickX4(十)总结

    开源自主导航小车MickX4 xff08 十 xff09 总结 1 博客回顾2 存在问题3 学习建议4 后续计划 在 开源自主导航小车MickX4 这个系列教程中 xff0c 我们一共分为了十个博客部分进行了讲解差速小车的导航 由于一些的原
  • iOS 什么是函数式编程

    前言 xff1a 当前只做理解性的常规背书 xff0c 根据不断深入学习会不断丰富解读内容 xff0c 欢迎评论提意见 函数式编程 xff1a Functional Programming 1 基本解释 xff1a 函数式编程 是一种思维模
  • MVC笔记 MVC注意事项及优化

    一 学习MVC注意事项 1 了解不同的项目类型 从ASP NET 2 0开始 xff0c vs针对网站开发区分了两种项目类型 xff0c 一种是 39 项目 39 xff08 Website Project xff09 另一种是 39 网址
  • 微软:新Windows设备需要默认支持TPM 2.0安全功能

    在Windows 10系统中微软已经做出大量调整来提升安全性能 xff0c 而现在微软进一步提升运行最新操作系统设备的安全等级 自今年夏天开始 xff0c 微软表示需要所有Windows 10设备都默认支持TPM 2 0 可信任安全平台模组
  • 令牌桶算法限流

    限流 限流是对某一时间窗口内的请求数进行限制 xff0c 保持系统的可用性和稳定性 xff0c 防止因流量暴增而导致的系统运行缓慢或宕机 常用的限流算法有令牌桶和和漏桶 xff0c 而Google开源项目Guava中的RateLimiter
  • 关机一直显示正在关闭服务器,电脑关机后,显示正在关机,但等半天也关不了 怎么办...

    电脑关机后 xff0c 显示正在关机 xff0c 但等半天也关不了 怎么办以下文字资料是由 历史新知网www lishixinzhi com 小编为大家搜集整理后发布的内容 xff0c 让我们赶快一起来看一下吧 xff01 电脑关机后 xf
  • 一只老鸟嵌入式工程师的血泪史!

    作为一名在嵌入式行业摸爬滚打许久的老鸟 xff0c 回想自己的经历之路 xff0c 那么漫长可又仿佛近在眼前 随着学生的日益增多 xff0c 偶尔之间 xff0c 会想起自己曾经的一个经历 此文仅献给那些刚刚踏上硬件之路和还在徘徊的同学们
  • 程序员的“菜鸟心态综合症”

    第3章 程序员的 菜鸟心态综合症 清华大学出版社 Java程序员 xff0c 上班那点事儿 作者 xff1a 钟声 第3章部分节选 人的一生会遇到很多挫折 xff0c 尤其是我们刚刚参加工作初期的年轻人 这个人生阶段往往会出现各种各样的处世
  • sc.textFile("file:///home/spark/data.txt") Input path does not exist解决方法——submit 加参数 --master local...

    use this val data 61 sc textFile 34 home spark data txt 34 this should work and set master as local Input path does not
  • mongodb查询数据库中某个字段中的值包含某个字符串的方法

    正则表达式最能解决 xff1a 例如 xff1a db getCollection 39 news 39 find 39 content 39 120 77 215 34 9999 这里主要是注意正则表达式要写对 xff0c 该转义的注意转
  • MATLAB 求两个矩阵的 欧氏距离

    欧式距离定义 xff1a 欧式距离公式有如下几种表示方法 xff1a MATLAB 求两个矩阵的 欧氏距离 xff1a 如果定义两个矩阵分别为a b 则定义c 61 a b 2 所求距离d 61 sqrt sum c
  • Vmware虚拟机磁盘空间不足

    Vmware虚拟机清理磁盘空间 遇到一个问题就是虚拟机中的磁盘空间越来越小 xff0c 即使把文件删除以后 xff0c 磁盘空间还是无法释放 这主要是vmware中的缓存没有清除 在使用vmware虚拟机的时候 xff0c 经常会在主机和虚
  • 技术面试感觉什么都会,面试官一问回答不上来怎么办?

    又到了一年金三银四 xff0c 回想到很多年前我刚参加工作时的面试经历 xff0c 那时都是呆呆地等着面试官问问题 xff0c 被问到一些自己并不熟悉的问题时要不就是思考半天也切不中要点 xff0c 要不就只能无奈地回答并不清楚了 其实不管
  • 强化学习遭遇瓶颈!分层RL将成为突破的希望

    本文作者是法国里尔大学Inria SequeL团队的博士生 xff0c Yannis Flet Berliac xff0c 他在本文中对分层强化学习 xff08 HRL xff09 的研究进行了总结 xff0c 文章首先回顾了强化学习 xf
  • 如何免费下载百度文库文章的三种方法

    百度文库中的资源很丰富 xff0c 但那里的文章不能复制 xff0c 而且有的要下载币 给 大家总结下免费下载复制百度文库的三种方法 第一种 利用百度快照 我们在百度文库中找到自己想要的文章后 xff0c 直接把那篇文章的地址复制 xff0
  • 434个H5游戏源码

    各种类型HTML5游戏 xff0c 界面和JS均可供项目参考 下面是下载地址 转载于 https blog 51cto com 12130120 2374590
  • iOS 左右滑动 手势 响应方法

    1 64 property nonatomic strong UISwipeGestureRecognizer leftSwipeGestureRecognizer 64 property nonatomic strong UISwipeG
  • 一道c语言编程题

    一道c语言编程题 将一个5 5的矩阵中最大的元素放在中心 xff0c 四个角分别放四个最小的元素 xff08 顺序从左到右 xff0c 从上到下顺序依次从小到大存放 xff09 xff0c 写一函数实现之 xff0c 用main函数调用 i
  • print(1,2,3,sep=':')的输出结果是?

    print 1 2 3 sep 61 39 39 1 2 3 第一个参数 要打印的值 第二个参数sep表示要打印多个值时 各值的分割方式 默认空格 第三个参数end表示结尾的方式 默认 n 转载于 https www cnblogs com
  • S3. Android 消息推送

    概要 消息推送 转载于 https www cnblogs com zlxyt p 11133181 html

随机推荐