ubuntu 22.04 LTS 内核从 5.15.0 升级到 6.6.0

本文介绍了在Ubuntu22.04LTS系统中将内核从5.15.0升级到6.6.0过程中遇到的错误,如编译时的make错误,并提供了相应的解决方法,包括修改vim.config文件和使用apt-get安装依赖,以及回滚内核版本的步骤。

ubuntu 22.04LTS 内核从 5.15.0 升级到 6.6.0

升级内核时报错

ubuntu22.04LTS源码编译升级内核时报错,

make[3]: *** No rule to make target 'n', needed by 'certs/x509_certificate_list'.  Stop.

其他类似错误:

make[1]: *** No rule to make target 'debian/canonical-certs.pem', needed by 'certs/x509_certificate_list'.  Stop.
make: *** [Makefile:1868: certs] Error 2

或者:

make[1]: *** No rule to make target 'debian/canonical-revoked-certs.pem', needed by 'certs/x509_revocation_list'.  Stop.
make: *** [Makefile:1868: certs] Error 2

解决方法

vim .config

#修改 CONFIG_SYSTEM_TRUSTED_KEYS 为空
CONFIG_SYSTEM_TRUSTED_KEYS=""

#修改CONFIG_SYSTEM_REVOCATION_KEYS 为空
CONFIG_SYSTEM_REVOCATION_KEYS=""

:wq 退出保存

执行下面的指令重新编译即可

make -j8

内核升级过程

sudo apt-get install  libncurses5-dev   openssl libssl-dev  -y
sudo apt-get install build-essential openssl -y
sudo apt-get install pkg-config -y
sudo apt-get install libc6-dev -y
sudo apt-get install bison -y
sudo apt-get install flex -y
sudo apt-get install libelf-dev -y
sudo apt-get install zlibc minizip -y
sudo apt-get install libidn11-dev libidn11 -y


wget https://git.kernel.org/torvalds/t/linux-6.6-rc7.tar.gz

tar -xzvf linux-6.6-rc7.tar.gz

cd linux-6.6-rc7
cp /boot/config-$(uname -r)    .config
#然后,运行以下命令以进行配置:在配置界面中可以根据需要修改内核选项;保存配置后退出。
make menuconfig

# 编译内核:
make -j8    # 【】我是这步报错的, 这步出现报错,按 ctrl + c 退出安装过程,然后按照上面方法进行配置,再执行这步

# 编译完成后,可以安装内核及其模块:
sudo make modules_install
sudo make install

# 更新引导程序
sudo update-grub
sudo reboot

# 验证新内核
uname -r

回滚到先前版本

#(1)启动时选择旧内核: 在系统启动时,通常会显示一个引导菜单,选择要启动的内核版本。
这通常是在 GRUB 引导菜单中完成的。在这个菜单中,选择先前的稳定内核版本,而不是新内核。

#(2)进入系统: 选择旧内核后,让系统继续启动。

# 查看系统上已安装的内核包列表:
dpkg --list | grep linux-image

# (3)卸载新内核
sudo apt-get purge <新内核包名>

# 更新引导程序
sudo update-grub

# 重新启动系统
sudo reboot

# 验证内核版本
uname -r
### 升级 Ubuntu 22.04 LTS 内核从 `6.5.0-41-generic` 到 `6.5.0-58-generic` Ubuntu 系统的内核升级可以通过多种方式进行,包括使用标准的软件包管理工具或手动下载并安装新内核。以下是一种推荐的方法,适用于希望从 `6.5.0-41-generic` 升级到 `6.5.0-58-generic` 的用户。 #### 方法一:使用 APT 升级内核 如果 `6.5.0-58-generic` 已经包含在官方仓库中,可以通过以下步骤进行升级: 1. 更新软件包列表: ```bash sudo apt update ``` 2. 安装指定版本的内核: ```bash sudo apt install linux-image-6.5.0-58-generic linux-headers-6.5.0-58-generic ``` 3. 安装完成后,重启系统以加载新内核: ```bash sudo reboot ``` 4. 系统重启后,验证当前使用的内核版本: ```bash uname -r ``` #### 方法二:手动下载并安装内核 如果 `6.5.0-58-generic` 尚未包含在官方仓库中,可以手动下载 `.deb` 包进行安装。访问 [Ubuntu 内核存档](http://archive.ubuntu.com/ubuntu/pool/main/l/linux/) 或 [官方内核 PPA](https://kernel.ubuntu.com/~kernel-ppa/mainline/) 下载以下文件(以 `amd64` 架构为例): - `linux-image-unsigned-6.5.0-58-generic_<version>_amd64.deb` - `linux-headers-6.5.0-58-generic_<version>_amd64.deb` 下载完成后,使用以下命令安装: ```bash sudo dpkg -i linux-image-unsigned-6.5.0-58-generic_*.deb sudo dpkg -i linux-headers-6.5.0-58-generic_*.deb ``` 安装完成后,更新 GRUB 配置以确保新内核被正确识别: ```bash sudo update-grub sudo update-initramfs -u ``` 最后,重启系统并验证内核版本: ```bash sudo reboot uname -r ``` #### 配置 GRUB 默认启动项(可选) 如果希望系统默认启动新内核,可以编辑 `/etc/default/grub` 文件,设置 `GRUB_DEFAULT` 为包含新内核的菜单项。例如,如果新内核位于 `Advanced options for Ubuntu > Ubuntu, with Linux 6.5.0-58-generic`,可以设置为: ```bash GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 6.5.0-58-generic" ``` 保存文件后,运行以下命令更新 GRUB 配置: ```bash sudo update-grub ``` 升级完成后,系统将使用新内核启动 [^3]。 ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

szZack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值