目录
在 Ubuntu 系统中安装实时内核(带有 PREEMPT_RT 补丁的内核)可以显著提升系统的实时性,适用于对任务响应时间有严格要求的场景。以下是详细的安装步骤:
方法一:安装官方预编译的实时内核(推荐)
Ubuntu 官方为部分版本提供了预编译的实时内核包,无需手动编译,步骤简单:
-
确认系统版本
实时内核包主要支持 Ubuntu 20.04 LTS 及以上版本,先查看系统版本:bash
lsb_release -a -
更新包列表
bash
sudo apt update sudo apt upgrade -y -
安装实时内核
执行以下命令安装匹配系统版本的实时内核(版本号可能随更新变化,以实际输出为准):bash
# 查找可用的实时内核包 apt search linux-image-rt # 安装内核(以Ubuntu 22.04为例,版本号需替换为搜索结果中的实际版本) sudo apt install linux-image-rt-5.15.0-78-generic linux-headers-rt-5.15.0-78-genericlinux-image-rt-*:实时内核镜像linux-headers-rt-*:对应的内核头文件(编译驱动时需要)
-
更新 GRUB 引导
安装完成后,更新启动引导配置:bash
sudo update-grub -
重启并选择实时内核
重启系统,在 GRUB 引导菜单中选择带有(recovery mode)上方的实时内核选项(通常标有PREEMPT RT)。 -
验证安装
重启后执行以下命令,输出中包含PREEMPT_RT即表示成功:bash
uname -a
方法二:手动编译实时内核(适用于特殊需求)
如果官方没有提供适配的预编译包,或需要自定义内核配置,可手动编译:
-
安装依赖工具
bash
sudo apt install build-essential libncurses5-dev libssl-dev flex bison git -
下载内核源码和 PREEMPT_RT 补丁
- 内核源码:从Kernel.org下载稳定版本(如 5.15.x)
- RT 补丁:从PREEMPT_RT 官网下载对应内核版本的补丁
bash
# 示例:下载5.15.78内核和对应的RT补丁 wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.78.tar.xz wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/5.15/patch-5.15.78-rt55.patch.xz # 解压 tar -xf linux-5.15.78.tar.xz cd linux-5.15.78 xz -d ../patch-5.15.78-rt55.patch.xz -
应用 RT 补丁
bash
patch -p1 < ../patch-5.15.78-rt55.patch -
配置内核
使用默认配置并启用实时选项:bash
make defconfig make menuconfig在配置界面中开启实时选项:
General setup → Preemption Model → Fully Preemptible Kernel (RT)- 保存配置并退出(默认保存到
.config)
-
编译并安装内核
bash
# 编译(-j后面的数字为CPU核心数,加速编译) make -j$(nproc) sudo make modules_install sudo make install -
更新 GRUB 并重启
bash
sudo update-grub sudo reboot
注意事项
- 实时内核可能不支持部分硬件驱动(尤其是闭源驱动),安装前建议备份系统。
- 若系统启动后出现问题,可在 GRUB 菜单中选择原来的普通内核启动。
- 实时内核更适合命令行环境,图形界面可能增加实时性干扰,建议在服务器版 Ubuntu 中使用。

3639

被折叠的 条评论
为什么被折叠?



