【ubuntu20.04】【ROS Noetic】【ROS安装】【Website may be down.】【gpg: 找不到有效的 OpenPGP 数据。】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、登入www.ros.org
- 1.Setup your sources.list
- 2.Set up your keys
- 中间出了点问题 gpg: 找不到有效的 OpenPGP 数据。
- 4.Installation下载安装ros
- 5.环境参数的配置
- 6.测试环节
- 7. sudo rosdep init报错 Website may be down.
- 8、Website may be down.报错解决方案
- 1)方案一 参考下列博客
- 2)方案二 安装pip
- 9.部分报错解决汇总(仅作参考)
- 总结
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、登入www.ros.org

ubuntu系统版本为20.04,对应的ros版本为Noetic.
点击下载,根据提示信息配置安装环境:(下列的界面点击安装会加载一(亿)阵子,这是正常现象)
来到下载提示界面,跟着官方教程一般可以正常安装(如果你在国外的话),对于国内用户,经常会出现网络等原因的报错,接下来本文将解释安装ros的每一步,并给出安装过程中的报错问题的解决方法,下列案例仅供参考,希望对各位读者有帮助。
1.Setup your sources.list


把ros的安装源添加到.lst文件的列表中(相当于给ubuntu装了一个ros商店)
sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main” > /etc/apt/sources.list.d/ros-latest.list’
这里的网址是国外的,可以换成国内的源。(点击上图中黄色的Mirrors图标选项)
选择合适的源:
USTC(中国科技大学-安徽合肥)
sudo sh -c ‘. /etc/lsb-release && echo “deb http://mirrors.ustc.edu.cn/ros/ubuntu/ lsb_release -cs main” > /etc/apt/sources.list.d/ros-latest.list’
Tsinghua University(清华大学-北京)
sudo sh -c ‘. /etc/lsb-release && echo “deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ lsb_release -cs main” > /etc/apt/sources.list.d/ros-latest.list’
Beijing Foreign Studies University(北京外国语大学-北京)
sudo sh -c ‘. /etc/lsb-release && echo “deb http://mirrors.bfsu.edu.cn/ros/ubuntu/ lsb_release -cs main” > /etc/apt/sources.list.d/ros-latest.list’
Shanghai Jiao Tong University
sudo sh -c ‘. /etc/lsb-release && echo “deb http://mirrors.sjtug.sjtu.edu.cn/ros/ubuntu/ lsb_release -cs main” > /etc/apt/sources.list.d/ros-latest.list’
Zhejiang University
sudo sh -c ‘. /etc/lsb-release && echo “deb http://mirrors.zju.edu.cn/ros/ubuntu/ lsb_release -cs main” > /etc/apt/sources.list.d/ros-latest.list’
2.Set up your keys
设置安装密钥
先安装curl工具(#后注释部分不需要复制输入,提示就Y+回车确定)
sudo apt install curl # if you haven’t already installed curl
执行第二条指令:
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
中间出了点问题 gpg: 找不到有效的 OpenPGP 数据。
解决方法:
第一步:
wget http://packages.ros.org/ros.key
第二步:
sudo apt-key add ros.key
第三步:
sudo apt-get update --fix-missing
第四步:
sudo apt install ros-noetic-desktop-full
4.Installation下载安装ros
sudo apt update
从更新后的索引列表中安装ROS系统
sudo apt install ros-noetic-desktop-full
5.环境参数的配置
Environment setup
You must source this script in every bash terminal you use ROS in.
source /opt/ros/noetic/setup.bash
It can be convenient to automatically source this script every time a new shell is launched. These commands will do that for you.
首先需要将ROS的环境设置脚本添加到终端程序的初始化脚本里;
(之后每次打开终端程序都会自动进行ROS系统环境的初始化)
echo “source /opt/ros/noetic/setup.bash” >> ~/.bashrc
source ~/.bashrc
6.测试环节
roscore
出现下列界面表示ros的核心已经运行起来了:
read-normal-img
rosdep初始化
对ros的依赖包工具进行初始化,方便以后安装第三方的扩展软件包
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
read-normal-img
下面这条指令前面已经安装过了
sudo apt install python3-rosdep
7. sudo rosdep init报错 Website may be down.
sudo rosdep init
rosdep update
报错
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
<urlopen error <urlopen error [Errno 111] Connection refused> (https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list)>
网站(raw.githubusercontent.com)访问不了,解决方案是添加网址对应的主机IP地址到/etc/hosts文件中:
出现Website may be down.原因是https://raw.githubusercontent.com/是网址访问不稳定(可多尝试几次sudo rosdep init)
8、Website may be down.报错解决方案
1)方案一 参考下列博客
https://blog.csdn.net/JIEJINQUANIL/article/details/106164903
比较靠谱的博客:
https://blog.csdn.net/Iamsonice/article/details/116018915
(1)打开/etc/hosts:
sudo gedit /etc/hosts
(2) 添加如下:
199.232.28.133 raw.githubusercontent.com(实测日期24.10.22不行了)
151.101.84.133 raw.githubusercontent.com
保存退出,Website may be down的问题即可解决。
如果还是不行就登入https://www.ipaddress.com/网址
(右上角)输入raw.githubusercontent.com查询IP地址:
read-normal-img
将查询到的IP替换上面代码的 151.101.84.133,最后输入结果是185.199.108.133 raw.githubusercontent.com,然后再次sudo rosdep init一般就会成功了
(这个页面很靠后,需要一直往下翻)
read-normal-img
2)方案二 安装pip
sudo apt-get install python3-pip
使用pip安装修改工具
sudo pip3 install 6-rosdep
运行刚刚下载好的配置修改工具
sudo 6-rosdep
上述工具原理说明:这是将rosdep的资源文件配置从国外地址修改成国内地址,这样即可顺利获取资源了,注意这三条指令都会对系统的设置经行修改,需要管理员sudo权限;
关闭终端重新打开新终端,继续执行
sudo rosdep init
rosdep update
安装完毕提示下列信息:

9.部分报错解决汇总(仅作参考)
若出现no valid OpenPGP data found,找不到openpgp数据。
wget http://packages.ros.org/ros.key
sudo apt-key add ros.key
sudo apt-get update --fix-missing
sudo apt install ros-noetic-desktop-full
rosdep连接超时的问题,在终端程序中依次执行如下三条指令:
sudo apt-get install python3-pip
sudo pip3 install 6-rosdep
sudo 6-rosdep
然后继续按照官方步骤操作即可。
总结
简单讲解了一下ubuntu20.04环境下ROS Noetic版本的安装以及依赖环境的安装,另外给出了ROS安装报错的解决方案,希望对各位读者有帮助,如果遇到问题,欢迎来到评论区讨论。
相关文章:
【ubuntu20.04】【ROS Noetic】【ROS安装】【Website may be down.】【gpg: 找不到有效的 OpenPGP 数据。】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、登入www.ros.org1.Setup your sources.list2.Set up your keys中间出了点问题 gpg: 找不到有效的 OpenPGP 数据。4.Installation下载安装ros5.环境参数的配…...
Python开发必备,这些黑科技库你get到了吗
大家好,今天我要为大家推荐一些非常强大和实用的Python库,相信无论是Python新手还是老司机,都能从中受益,提升你的Python开发技能。那就一起来看看吧! 1.Requests: 简单好用的HTTP请求库 第一个要介绍的是Requests库。它是Python中最流行的HTTP客户端库之一,大大简化了网络请…...
sublime text 常用快捷键
sublimetext常用快捷键 CtrlShiftP:打开命令面板 CtrlP:搜索项目中的文件 CtrlG:跳转到第几行 CtrlW:关闭当前打开文件 CtrlShiftW:关闭所有打开文件 CtrlShiftV:粘贴并格式化 CtrlD:选择单词&a…...
Kubernetes(K8S) + Harbor + Ingress 部署 SpringBoot + Vue 前后端分离项目
文章目录 1、环境准备2、搭建 K8S3、搭建 Harbor4、搭建 MySQL5、构建 SpringBoot 项目镜像6、构建 Vue.js 项目镜像7、部署项目7.1、配置 NameSpace7.2、配置 Deployment、Service7.3、配置 Ingress-Nginx7.4、访问测试 1、环境准备 本次整体项目部署使用的是阿里云ECS服务器…...
【iOS】知乎日报第一周总结
知乎日报第一周总结 文章目录 知乎日报第一周总结前言网络异步导致视图无法加载加载网络上的图片实现一个上拉刷新的效果左上角的时间初步实现了点击cell进入网页小结 前言 笔者在本周算是正式开始写项目了,本周主要是大致完成了主页的内容,大致完成了主…...
Springboot整合spring-boot-starter-data-elasticsearch
前言 <font style"color:rgb(36, 41, 47);">spring-boot-starter-data-elasticsearch</font> 是 Spring Boot 提供的一个起始依赖,旨在简化与 Elasticsearch 交互的开发过程。它集成了 Spring Data Elasticsearch,提供了一套完整…...
【大模型系列】mPLUG-Owl3(2024.08)
Paper: https://arxiv.org/pdf/2408.04840Github: https://github.com/X-PLUG/mPLUG-OwlHuggingFace:https://huggingface.co/mPLUG/mPLUG-Owl3-7B-240728Author: Jiabo Ye et al. 阿里巴巴 文章目录 0 总结(省流版)1 模型结构1.1 Cross-attention Based Achitectur…...
从0到1学习node.js(express模块)
文章目录 Express框架1、初体验express2、什么是路由3、路由的使用3、获取请求参数4、电商项目商品详情场景配置路由占位符规则5、小练习,根据id参数返回对应歌手信息6、express和原生http模块设置响应体的一些方法7、其他响应设置8、express中间件8.1、什么是中间件…...
MambaVision
核心速览 研究背景 研究问题 :这篇文章提出了一种新的混合Mamba-Transformer骨干网络,称为MambaVision,专为视 觉应用量身定制。研究的核心问题是如何有效地结合Mamba的状态空间模型(SSM)和Transf ormer的自注意力机制…...
MySQLDBA修炼之道-开发篇(二)
四、开发进阶 1. 范式和反范式 范式是数据库规范化的一个手段,是数据库设计中的一系列原理和技术,用于减少数据库中的数据冗余,并增进数据的一致性。 范式 1.1 第一范式 第一范式是指数据库表的每一列(属性)都是不可…...
前端必备的环境搭建
一、nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置) 参考地址:nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置)-CSDN博客 说明: 1)关于nodejs目录不显示&a…...
SpringCloud笔记
什么是降级熔断?为什么要进行熔断? 熔断降级是一种分布式系统的保护机制,用于应对服务不稳定或不可用的情况。 熔断是指当某个服务的调用失败次数或异常比例达到一定阈值时,自动切断对该服务的调用,让请求快速失败&…...
优秀的程序员思考数据结构
原文地址:https://read.engineerscodex.com/p/good-programmers-worry-about-data 我最近在这篇很棒的 Stack Overflow 文章中看到了 Linus Torvalds(Linux 和 Git 的创建者)的一句话。(这篇文章回顾了那篇文章中的许多引述。 它…...
「C/C++」C/C++标准库之#include<cstdlib>通用工具库
✨博客主页何曾参静谧的博客📌文章专栏「C/C」C/C程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…...
Oracle视频基础1.1.3练习
1.1.3 需求: 完整格式查看所有用户进程里的oracle后台进程 查看物理网卡,虚拟网卡的ip地址 ps -ef | grep oracle /sbin/ifconfig要以完整格式查看所有用户进程中的 Oracle 后台进程,并查看物理和虚拟网卡的 IP 地址,可以使用以下…...
python项目实战——多协程下载美女图片
协程 文章目录 协程协程的优劣势什么是IO密集型任务特点示例与 CPU 密集型任务的对比处理 I/O 密集型任务的方式总结 创建并使用协程asyncio模块 创建协程函数运行协程函数asyncio.run(main())aiohttp模块调用aiohttp模块步骤 aiofiles————协程异步函数遇到的问题一 await …...
基于.NET 8.0,C#中Microsoft.Office.Interop.Excel来操作office365的excel
开发环境: Visual Studio 2022 office365 项目模板:WPF应用程序 框架:.NET 8.0 依赖:Microsoft.Office.Interop.Excel 注意: 1.使用Microsoft.Office.Interop.Excel库时,服务器或电脑里面必须安装得…...
使用无线方式连接Android设备进行调试的两种方法
1.使用配对码配对设备方式 手机(或者平板等安卓设备)和电脑需连接在同一WiFi 下;保证 SDK 为最新版本(adb --version ≥ 30.0.0); step1.手机启用开发者选项和无线调试模式(会提示确认ÿ…...
Valgrind的使用
Valgrind 是一个强大的开源工具,用于检测程序中的内存错误、内存泄漏以及线程问题。它广泛应用于 C/C++ 等需要手动管理内存的编程语言中。以下内容将详细介绍 Valgrind 的安装、基本使用方法、常用命令及其输出结果的解析。 1. 什么是 Valgrind? Valgrind 是一个用于内存调…...
微信小程序瀑布流实现,瀑布流长度不均等解决方法
这是一开始实现的瀑布流,将数据分为奇数列和偶数列 <view class"content-left"><block wx:for"{{list}}" wx:key"list"><template isitem-data data{{...item}} wx:if"{{index % 2 0}}"></template&…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...
AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
Go语言多线程问题
打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...
React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构
React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...
boost::filesystem::path文件路径使用详解和示例
boost::filesystem::path 是 Boost 库中用于跨平台操作文件路径的类,封装了路径的拼接、分割、提取、判断等常用功能。下面是对它的使用详解,包括常用接口与完整示例。 1. 引入头文件与命名空间 #include <boost/filesystem.hpp> namespace fs b…...
手动给中文分词和 直接用神经网络RNN做有什么区别
手动分词和基于神经网络(如 RNN)的自动分词在原理、实现方式和效果上有显著差异,以下是核心对比: 1. 实现原理对比 对比维度手动分词(规则 / 词典驱动)神经网络 RNN 分词(数据驱动)…...
