ROS Kinetic和Ubuntu 16.04 LTS的支持即将结束:如何减轻影响?
by liam zheng on 17 March 2021
十多年来,机器人操作系统(ROS)一直使世界各地的创新者能够开发自己的机器人平台和应用程序。通过提供的工具集,库和规范,ROS简化了创建复杂且强大的机器人行为的任务。
从一开始,Ubuntu一直都是ROS的主要参考平台。这也是为什么每个ROS版本都仅在Ubuntu LTS受支持原因。ROS发行版是ROS软件包的版本集。现在,ROS Kinetic版本和与之对应的Ubuntu Xenial将在4月份达到生命支持周期。这意味着ROS和Ubuntu以及如Python 2依赖的安全更新和常规漏洞披露(CVE)补丁修复将结束。
不受支持的软件问题往往以不同且通常是意料之外的方式表现出来。继续阅读以了解对开发者的影响,探索一些关键的考虑因素,为即将到来的Xenial和Kinetic EOL(生命周期结束)做准备。阅读到文章,以获取有关如何使用ROS Kinetic的信息。
对ROS Kinetic的支持即将结束
从4月份开始,你将不会收到上游ROS和Ubuntu对ROS1 Kinetic和Ubuntu 16.04 LTS的CVE补丁修复和安全更新。最后,你将不能使用Ubuntu仓库。因此,如果你要安装一个新的软件,只会获得一个“无法定位软件包”的提示。例如,在安装ROS 1 Kinetic桌面时通常会使用下面命令:
`sudo apt-get install ros-kinetic-desktop-full`
但是,这个软件包不再存在。除此以外,已安装的软件包也不会再被修复,导致你的系统处于危险中。如果你的机器人在没有安全补丁的情况下连接互联网,那么该系统将变得容易受到网络安全威胁。
要避免这些问题,升级你的Ubuntu和和ROS版本到一个长期支持(LTS)的版本将是一个最为可持续的方案。尽管此方案不容易,但是我们也会给予你一些建议供参考。
ROS的迁移贴士
迁移到一个长期支持的Ubuntu和ROS版本是一项有挑战性的任务。你应该了解Ubuntu和ROS的版本相互依赖,以致于不得不选择一对。例如,如果你升级到Ubuntu 18.04 LTS,也必须升级到ROS 1 Melodic。
让我们先聚焦在操作系统Ubuntu上。你可以升级到18.04 LTS或者20.04 LTS。因为没有直接从16.04 LTS到20.04 LTS的升级方法。所以,你需要先升级到18.04 LTS再升级到20.04 LTS。更多内容可以观看我们的20.04 迁移研讨会(英文)。
现在来谈谈ROS。你可以升级到ROS 1 Melodic或者Noetic亦或ROS 2 Foxy。然而,你也应该注意一些内容:
- 你的ROS软件包在新版的ROS上可能不支持
- 现在配置的一些API可能依赖于Ubuntu 16.04 LTS上的软件包和依赖的特定版本。例如,我们仍然支持Python 2.7,ROS 1 Noetic和ROS 2 Foxy都不再支持此Python版本。(更多内容请阅读过渡到Python 3文章)
在ROS 1 Noetic和Melodic中很多软件包已发生变化。除非明确要求Python 2,否则我们建议使用20.04/Noetic。
最后,你可以从ROS 1迁移到ROS 2并受益于一些特性功能。然而,迁移不是一个简单的过程。 ROS 2带有学习曲线,不同的构建环境,更多的C ++ 11和更高的内置函数,并且仅支持Python 3。可以在此处找到迁移到ROS 2 Foxy的完整指南。
想要继续留在ROS Kinetic?
迁移是一件苦难的事情。可能需要更多时间?或者你会纠结新版本的不稳定性?现在,可以联系我们了解更多我们的支持选项。
订阅博客文章
查看更多内容
Canonical 宣布推出 12 年 Kubernetes LTS
Canonical 的 Kubernetes LTS(长期支持)将支持 FedRAMP 合规性,并在裸机、公共云、OpenStack、Canonical MicroCloud 和 VMware 上获得至少 12 年的承诺安全维护和企业支持。 Canonical 宣布,从 Kubernetes 1.32 开始,将提供 12 年的安全维护和支持。新版本易于安装、操作和升级,具有一流的开源网络、DNS、网关、度量服务器、本地存储、负载平衡器和入口服务。Canonical Kubernetes 使客户能够按照自己的节奏进行升级,对于喜欢快速行动的组织,将每四个月发布一次新的上游版本,对于需要长期支持环境的组织,则提供 12 年的承诺。 “Kubernetes 的不断升级是企业团队 […]
如何使用 DSS 构建您的首个模型
GenAI 无处不在,它正在改变我们对待技术的方式。如果您曾想要深入大型语言模型(LLM)的世界,但是感到无从下手,那么有一个好消息!Hugging Face 最近推出了一个自定进度的课程,非常适合初学者和更有经验的爱好者。由于模型占用面积小,它可以实际操作,易于使用,并且设计为在标准硬件上工作。 当我听到这个消息时,我决定使用 Canonical 的数据科学堆栈(DSS)来尝试一下。 在这篇博客中,我将指导您设置 DSS 并运行 Hugging Face 课程的第一个笔记本。该笔记本侧重于受监督的微调,这是一种使预先训练的语言模型适应特定任务或领域的方法。在这篇帖子的结尾,您将会看到 GenAI 是多么的简单和容易理解——这将是一项用于开启新年篇章的完美新技能。 设置您 […]
预装且完全维护的数据应用程序
引入可信开源数据库容器 不要再说 “云原生还很遥远” 了。Kubernetes 刚刚庆祝了其 10 周年纪念,在最新的 CNCF 年度调查中,76% 的受访者表示他们已经在大部分或全部产品开发和部署中采用了云原生技术,例如容器。云原生并不遥远 —— 它已经到来。 数据密集型工作负载也不例外。恰恰相反,Kubernetes 专家之声 2024 年报告发现,97% 的组织在云原生平台上运行数据工作负载,72% 的数据库和 67% 的分析服务在 Kubernetes 上运行。 数据库容器正在推动可扩展性、灵活性、操作简单性和成本方面的重大改进。但是,在容器上管理这样的状态管理解决方案(通常使用多个开源组件构建)也给站点可靠性工程师、平台工程师和首席信息安全官等带来了不小的难 […]