【Linux / Ubuntu20.04 | 安装实时内核补丁PREEMPT_RT】
ubuntu20.04安装PREEMPT_RT实时内核及测试
- 1.前置准备工作
- 2.从官方下载内核的源码和对应RT补丁
- 3.安装依赖项
- 4.创建内核+补丁的环境
- 5.配置内核
- 6.编译带RT补丁的内核
- 7.校验结果
- 8.设置用户权限以使用RT实时调度(关键一步)
- 9.测试实时性
- 10.启动设置
- 11.其他设置
1.前置准备工作
大多数教程都说:“首先要通过uname -r
查看当前版本内核,注意查找离自己目前内核最接近的 kernal 并下载,然后根据下载的内核版本下载补丁,内核版本和补丁版本要保持一致。”但据我的测试,我在5.15.0-64-generic的基础上,分别安装了5.15.167-rt79和5.10.225-rt117,都是可以正常运行rt内核的,实时性都是OK的。不清楚大家为什么这么说?
2.从官方下载内核的源码和对应RT补丁
正确的顺序应该是,先去rt页面找到哪个版本有对应的rt补丁,再去linux内核页面下载对应的内核源码。
- RT补丁:https://www.kernel.org/pub/linux/kernel/projects/rt/
- linux内核源码:https://www.kernel.org/pub/linux/kernel
本文使用的是在ubuntu20.04内核5.15.0-64-generic基础上,安装了linux5.10.225内核以及对应的5.10.225-rt117实时补丁,已通过测试。
【需要注意】RT补丁尽量和linux内核版本上完全保持一致,有的教程也说可以接近就行,但没尝试过,不确定稳定性如何。
3.安装依赖项
sudo apt-get install libncurses5-dev libssl-dev build-essential openssl zlibc libelf-dev minizip libidn11-dev libidn11 bison flex zstd
4.创建内核+补丁的环境
假如下载的是xz后缀,以5.10.225为例:
sudo mkdir /usr/src/rt_kernal
sudo cp ~/Downloads/linux-5.10.225.tar.xz /usr/src/rt_kernal/
sudo cp ~/Downloads/patch-5.10.225-rt117.patch.xz /usr/src/rt_kernal/
cd /usr/src/rt_kernal/
sudo su
xz -cd linux-5.10.225.tar.xz | tar xvf -
cd linux-5.10.225
xzcat ../patch-5.10.225-rt117.patch.xz | patch -p1
5.配置内核
如果之前操作都正确,目前应该是在linux-5.10.225的root用户路径下
所以接下来的操作都没有sudo命令前缀
如果
本文地址:https://www.vps345.com/3131.html