在Ubuntu中配置实时补丁

在这个地址下载linux-5.15.119.tar.xz :https://cdn.kernel.org/pub/linux/kernel/v5.x/

在这个地址下载patch-5.15.119-rt65.patch.xz:https://cdn.kernel.org/pub/linux/kernel/projects/rt/5.15/older/

然后放入ubuntu的文件夹中,进行解压:

复制代码
root@raojs-virtual-machine:/opt# tar -xf linux-5.15.119.tar.xz
root@raojs-virtual-machine:/opt# ls
linux-5.15.119  linux-5.15.119.tar.xz  patch-5.15.119-rt65.patch.xz
root@raojs-virtual-machine:/opt# cd linux-5.15.119/
root@raojs-virtual-machine:/opt/linux-5.15.119# ls
arch   certs    CREDITS  Documentation  fs       init      ipc     Kconfig  lib       MAINTAINERS  mm   README   scripts   sound  usr
block  COPYING  crypto   drivers        include  io_uring  Kbuild  kernel   LICENSES  Makefile     net  samples  security  tools  virt
root@raojs-virtual-machine:/opt/linux-5.15.119# cd ..
root@raojs-virtual-machine:/opt# xz -d patch-5.15.119-rt65.patch.xz

然后,打补丁:

复制代码
cd linux-5.15.119
patch -p1 < ../patch-5.15.119-rt65.patch

回答问题:

复制代码
# 1. Timer tick handling - 选择 Full dynticks
choice[1-3?]: 3

# 2. Force context tracking - 选择 N(推荐)
Force context tracking (CONTEXT_TRACKING_FORCE) [N/y] (NEW): n

抢占模型选择(最关键)

# 当出现 Preemption Model 选项时
Preemption Model
  1. No Forced Preemption (Server) (PREEMPT_NONE)
  2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
  3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
> 4. Fully Preemptible Kernel (Real-Time) (PREEMPT_RT)
choice[1-4?]: 4

# CPU 隔离(如果需要专用核心运行实时任务)
CPU isolation (RCU_NOCB_CPU) [N/y] (NEW): y

# 追踪器选项(调试用,通常选 N)
Tracers (FTRACE) [Y/n] (NEW): n

# 高性能计时器
High Resolution Timer Support (HIGH_RES_TIMERS) [Y/n] (NEW): y

# 中断合并延迟
Interrupt merging (IRQ_MERGE) [N/y] (NEW): n

# RCU 回调卸载(推荐)
Offload RCU callback processing from boot-selected CPUs (RCU_NOCB_CPU) [N/y] (NEW): y

# CPU 频率调控(对实时性有影响)
CPU Frequency scaling (CPU_FREQ) [Y/n] (NEW): y
  # 选择性能模式
  Default CPUFreq governor (performance)


Milliseconds to delay boosting after RCU grace-period start (RCU_BOOST_DELAY) [500] (NEW)
默认值:回车
后面可多次回车

选择2即可:
Legacy applications
1.Full emulation (LEGACY_VSYSCALL_EMULATE) (NEW)
>2.Emulate execution only (LEGACY VSYSCALL XONLY)
3. None (LEGACY VSYSCALL NONE)
choice[1-3?]:

可选2或者3:
Which hash algorithm should modules be signed with?
1.Sign modules with SHA-1 (MODULE SIG SHA1)
2 Sign modules With SHA-224 (MODULE SIG SHA224) (NEW)
3 Sign modules with SHA-256 (MODULE SIG SHA256
4 Sign modules With SHA-384 (MODULE SIG SHA384)
5 Sign modules with SHA-512 (MODULE SIG SHA512)

复制当前配置(关键):cp /boot/config-$(uname -r) .config

然后:make oldconfig

打开实时选项(核心步骤):make menuconfig

进入:

复制代码
General Setup  --->
    Preemption Model  --->

选择:

复制代码
( ) No Forced Preemption
( ) Voluntary Kernel Preemption
( ) Preemptible Kernel
(*) Fully Preemptible Kernel (Real-Time)

编译内核(耗时)

复制代码
make -j$(nproc)
make modules_install
sudo make install

遇到问题1:无法更新软件包

复制代码
root@raojs-virtual-machine:/opt/linux-5.15.119# sudo apt update 忽略:1 http://cn.archive.ubuntu.com/ubuntu jammy InRelease 忽略:2 http://security.ubuntu.com/ubuntu jammy-security InRelease 忽略:1 http://cn.archive.ubuntu.com/ubuntu jammy InRelease 忽略:2 http://security.ubuntu.com/ubuntu jammy-security InRelease 忽略:1 http://cn.archive.ubuntu.com/ubuntu jammy InRelease 忽略:2 http://security.ubuntu.com/ubuntu jammy-security InRelease 错误:1 http://cn.archive.ubuntu.com/ubuntu jammy InRelease 暂时不能解析域名"cn.archive.ubuntu.com" 错误:2 http://security.ubuntu.com/ubuntu jammy-security InRelease 暂时不能解析域名"security.ubuntu.com" 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 所有软件包均为最新。 W: 无法下载 http://cn.archive.ubuntu.com/ubuntu/dists/jammy/InRelease 暂时不能解析域名"cn.archive.ubuntu.com" W: 无法下载 http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease 暂时不能解析域名"security.ubuntu.com" W: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。 root@raojs-virtual-machine:/opt/linux-5.15.119# ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. From 192.168.0.100 icmp_seq=54 Destination Host Unreachable From 192.168.0.100 icmp_seq=55 Destination Host Unreachable

解决方法:配置 VMware NAT 端口映射。编辑 → 虚拟网络编辑器→ VMnet8(NAT)→NAT Settings → Port Forwarding

这项需要配置正确,然后才可以正常使用MobaXterm这类软件连接ubuntu.

相关推荐
星马梦缘27 分钟前
如何切换window-ubuntu双系统【方案二】
linux·运维·ubuntu
2501_9272835843 分钟前
荣联汇智助力天津艺虹打造“软硬一体”智慧工厂,全流程自动化引领印刷包装行业数智变革
大数据·运维·数据仓库·人工智能·低代码·自动化
HXDGCL1 小时前
矩形环形导轨:自动化循环线的核心运动单元解析
运维·算法·自动化
丑八怪大丑2 小时前
Java网络编程
linux·服务器·网络
橙子也要努力变强2 小时前
信号捕捉底层机制-机理篇2
linux·服务器·c++
Jinkxs3 小时前
LoadBalancer- 主流负载均衡工具盘点:Nginx / Haproxy / Keepalived 基础介绍
运维·nginx·负载均衡
秋93 小时前
MySQL 8.0.46 全平台安装与配置详解(Windows/Linux/macOS)
linux·windows·mysql
小康小小涵3 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python
CQU_JIAKE3 小时前
4.28~4.30【Q】
linux·运维·服务器
左手厨刀右手茼蒿3 小时前
Linux 内核中的设备驱动开发:从字符设备到网络设备
linux·嵌入式·系统内核