在UTM的Ubuntu 20.04.5 arm64上安装ROS Noetic时遇OpenPGP数据错误
解决ROS Noetic安装中
gpg: no valid OpenPGP data found错误(UTM Ubuntu 20.04 arm64) 以下是针对该问题的实用解决步骤:
先确认网络连通性
直接执行命令查看密钥文件的实际返回内容,判断是否是网络问题导致无法获取有效PGP数据:curl https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc如果返回HTML报错(如403、404),说明无法正常访问目标域名,需先解决网络连通问题(比如修改hosts文件添加对应IP、使用代理等)。
手动下载并导入密钥
若curl命令无法正常获取密钥,改用wget手动下载:wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc下载完成后执行导入:
sudo apt-key add ros.asc注意检查下载的
ros.asc文件内容,若为空或包含网页代码,说明下载失败,需先解决网络问题。使用Ubuntu推荐的密钥管理方式
Ubuntu 20.04及以上版本更推荐将密钥存储在/usr/share/keyrings目录下,而非使用apt-key add,执行以下命令完成密钥导入和源配置:curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo gpg --dearmor -o /usr/share/keyrings/ros-archive-keyring.gpg echo "deb [arch=arm64 signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/ros-latest.list清理无效密钥并重新导入
如果之前导入过错误或无效的ROS密钥,先列出所有密钥:sudo apt-key list找到对应ROS的密钥ID(通常以
ROS Repository开头),执行删除:sudo apt-key del <密钥ID>之后再重新执行上述正确的密钥导入步骤。
内容的提问来源于stack exchange,提问作者chiru sandeep
相关产品推荐
相关产品推荐

