Ubuntu系统编译内核——deb安装 / install安装

2024-05-30 22:28

本文主要是介绍Ubuntu系统编译内核——deb安装 / install安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要

本文简要记录两种编译内核的方法:

  • 打包成deb模块安装(推荐);
  • 直接make install安装;

更推荐使用——打包成deb模块安装,因为可以方便的拷贝下次其他机器使用。


1. 编译环境准备

系统:linux衍生系统都行,我用的是银河麒麟系统。

# 更新apt软件源
sudo apt update # 安装编译软件环境
sudo apt install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison liblz4-tool debhelper -y

2. 内核源码下载

内核下载:

  • 官方链接:https://www.kernel.org/
  • 其它链接:http://ftp.sjtu.edu.cn/sites/ftp.kernel.org/pub/linux/kernel/

如下图所示,下载tarball,源码格式通常都是 linux-x.x.x.tar.gz 形式。


3. 按需修改内核编译配置

  下载后,解压,并进入源码目录

tar -xvf linux-6.9.2.tar.gzcd linux-6.9.2

  使用当前系统的.config文件作为模板

cp -v /boot/config-5.8.2-genertic .config

  配置内核,如果没什么需求就直接save,然后exit

make menuconfig

  。。。中间你可以加入自己需要的源码补丁。

重要:

sudo vim .config

将CONFIG_SYSTEM_TRUSTED_KEYS和CONFIG_SYSTEM_REVOCATION_KEYS的内容删除(保留双引号),如果本身就是空的双引号就不用管。

不然的话会编译报错。

保存。


4. 编译 && 安装

4.1 方法1——deb包安装(推荐)

# 使用make bindeb-pkg进行编译
sudo make bindeb-pkg -j16

  执行完成之后,在源码目录的上层会生成3个文件

  • linux-headers-6.9.2_6.9.2-4-arm64.deb
  • linux-image-6.9.2_6.9.2-4-arm64.deb
  • linux-libc-6.9.2_6.9.2-4-arm64.deb
# 安装新内核
sudo dpkg -i *.deb# 更新grub
sudo update-grub

4.2 方法2——make installl安装

# 编译和安装
sudo make -j16
sudo make modules -j16
sudo make modules_install -j16
sudo make install -16# 更新grub
sudo update-grub

5. 重启

sudo reboot now

  执行清理命令,就能够释放我们刚才编译内核时候生成占用的空间。

make clean

6. 卸载内核

  查看自己安装过的内核版本,在里面我们可以找到对应的headers与image。

dpkg --get-selections | grep image

  先卸载headers:

sudo apt-get purge linux-headers-6.9.2

  接着卸载image:

apt-get purge linux-image-6.9.2

  更新grub

sudo update-grub

参考文章

编译deepin主线内核icon-default.png?t=N7T8https://bbs.deepin.org/post/262451

内核打包- Community - Deepin Technology内核打包icon-default.png?t=N7T8https://bbs.deepin.org/zh/post/270582

这篇关于Ubuntu系统编译内核——deb安装 / install安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016983

相关文章

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

Maven如何手动安装依赖到本地仓库

《Maven如何手动安装依赖到本地仓库》:本文主要介绍Maven如何手动安装依赖到本地仓库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载依赖二、安装 JAR 文件到本地仓库三、验证安装四、在项目中使用该依赖1、注意事项2、额外提示总结一、下载依赖登

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh

如何在pycharm安装torch包

《如何在pycharm安装torch包》:本文主要介绍如何在pycharm安装torch包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录在pycharm安装torch包适http://www.chinasem.cn配于我电脑的指令为适用的torch包为总结在p

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor

Python Transformer 库安装配置及使用方法

《PythonTransformer库安装配置及使用方法》HuggingFaceTransformers是自然语言处理(NLP)领域最流行的开源库之一,支持基于Transformer架构的预训练模... 目录python 中的 Transformer 库及使用方法一、库的概述二、安装与配置三、基础使用:Pi