ubuntu18.04配置实时内核

ubuntu系统:18.04

当前内核:5.4.0-84-generic

待安装实时内核: 5.6.19-rt11

1、查看当前版本

uname -r

2、下载内核与补丁

一种方式从官网自己下载

另一种方式直接在终端用命令行下载

curl -SLO https://mirrors.aliyun.com/linux-kernel/v5.x/linux-5.6.19.tar.xz
curl -SLO https://mirrors.aliyun.com/linux-kernel/v5.x/linux-5.6.19.tar.sign    
curl -SLO https://mirrors.aliyun.com/linux-kernel/projects/rt/5.6/older/patch-5.6.19-rt11.patch.xz
curl -SLO https://mirrors.aliyun.com/linux-kernel/projects/rt/5.6/older/patch-5.6.19-rt11.patch.sign

下载得到这四个文件

 如果是ubuntu 16.04就相应的改成实时内核5.4.19-rt10,其余ubuntu版本就找相对应版本更高的实时内核即可。

3、安装内核与补丁

1. 在下载的内核和补丁所在文件夹打开终端,记得把实时内核版本号改成自己的

xz -cd linux-5.6.19.tar.xz | tar xvf -
cd linux-5.6.19
xzcat ../patch-5.6.19-rt11.patch.xz | patch -p1

2. 在终端中安装必须的安装包: 

sudo apt-get install libncurses-dev bison flex bc libelf-dev
 
sudo apt-get install libssl-dev

3、把原内核复制到.config文件中

在boot文件夹下可以找到与当前内核版本匹配的 config 文件,例如:config-5.4.0-84-generic 。将其拷贝到当前目录~/rt_kernal/linux-5.6.19 下并命名为 .config

终端命令如下(记得把5.4.0-84改成当前自己的内核版本):

sudo cp /boot/config-5.4.0-84-generic .config

  config-5.4.0-84-generic就是下图第三个文件。

4、配置内核

make oldconfig

 回车,直到出现选择的选项,选择Fully Preemptible Kernel (RT),就是下图第四个选项  然后一直回车到结束

  5、编译内核

首先查看自己的电脑有多少个cpu

lscpu

可以看到我的有32个cpu,所以在下面的命令中-j后面就是32,表示编译的线程数 。编译线程数越大,编译越快。

make -j32 deb-pkg

 可能会出现如下警告,不用理会。大约等待一个多小时,实时内核会自动编译好。

大概率会出现以下错误

dpkg-buildpackage: 错误: debian/rules build subprocess returned exit status 2
scripts/Makefile.package:73: recipe for target 'deb-pkg' failed
make[1]: *** [deb-pkg] Error 2
Makefile:1429: recipe for target 'deb-pkg' failed
):

解决方法: 在linux-5.6.19文件中,Ctrl+h显示隐藏文件,选择.config文件打开。直接修改 .config 文件,注释掉以下四项:

  • CONFIG_MODULE_SIG_ALL=y
  •  CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
  • CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem"
  • CONFIG_DEBUG_INFO=y

 

然后重现执行命令“make -j32 deb-pkg”编译内核,编译刚开始需要按回车键。

  6.安装 deb 包

经过上面的编译过程,应该会在和linux压缩包同目录下生成3个或者4个.deb格式的安装包,在该文件夹下打开终端,安装所有生成的.deb包

sudo dpkg -i linux-headers-5.6.19-rt11_5.6.19-rt11-1_amd64.deb linux-image-5.6.19-rt11_5.6.19-rt11-1_amd64.deb linux-libc-dev_5.6.19-rt11-1_amd64.deb

7. reboot 并验证 

reboot

reboot然后进入 ubuntu 高级选项,发现已经有了刚刚安装的实时内核! 

 enter 启用该内核(不带有recovery mode字样的那一个),开机后uname -r查看当前系统内核

在这里插入图片描述

在终端输入  gedit /sys/kernel/realtime 进入一个文件,如果里面是有一个“1”,就说明实时内核就安装完成了。

 gedit /sys/kernel/realtime 

———————————————————————————————————

如果后续要使用Franka机器人,对于实时内核需要添加以下操作

1.在终端执行以下命令

sudo addgroup realtime
sudo usermod -a -G realtime $(whoami)

2. 打开limits.conf文件

 sudo gedit /etc/security/limits.conf

在/etc/security/limits.conf 中添加以下内容 并保存

@realtime soft rtprio 99
@realtime soft priority 99
@realtime soft memlock 102400
@realtime hard rtprio 99
@realtime hard priority 99
@realtime hard memlock 102400

8. 后续操作

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

啵啵鱼爱吃小猫咪

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

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

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

打赏作者

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

抵扣说明:

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

余额充值