解决方案
可以手工添加。
ROS1云课→18一键配置_linux ros1配置-CSDN博客
下载ros.key,然后手工添加到对应位置。
ros2407.key · master · zhangrelay / ros_book · GitCode
问题描述
ros2@ros2-20l1a001cd:~$ sudo apt update
Hit:1 http://ftp.sjtu.edu.cn/ubuntu noble InRelease
Hit:2 http://ftp.sjtu.edu.cn/ubuntu noble-updates InRelease
Hit:3 http://ftp.sjtu.edu.cn/ubuntu noble-backports InRelease
Get:4 http://packages.ros.org/ros2/ubuntu noble InRelease [4,667 B] o
Hit:5 http://security.ubuntu.com/ubuntu noble-security InRelease
Err:4 http://packages.ros.org/ros2/ubuntu noble InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F42ED6FBAB17C654
Reading package lists... Done
W: GPG error: http://packages.ros.org/ros2/ubuntu noble InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F42ED6FBAB17C654
E: The repository 'http://packages.ros.org/ros2/ubuntu noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
下载并加载
下载
wget https://gitcode.net/ZhangRelay/ros_book/-/blob/master/ros2407.key
加载
sudo apt-key add ros2407.key
使用类似
curl -sS https://download.spotify.com/debian/pubkey_5E3C45D7B312C643.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/spotify.gpg
这里会发现很多操作随着时间会有明显变化的。
完成
ros2 jazzy
24-07-29一共1987个功能包。
sudo apt install ros-jazzy-desktop-full
安装ROS 2 Jazzy Jalisco_ros-jazzy-desktop-CSDN博客
问题描述中提到的错误是由于APT(Advanced Package Tool)在尝试从ROS 2的软件源更新软件包列表时,无法验证签名,因为缺少相应的公钥。这通常发生在添加新的软件源或仓库时,如果没有导入相应的GPG密钥,APT就无法验证下载的软件包的完整性和真实性。
解决方案如下:
1. **下载ROS公钥**:
使用`wget`命令从提供的URL下载ROS的公钥文件。例如:
```bash
wget https://gitcode.net/ZhangRelay/ros_book/-/raw/master/ros2407.key
```
注意:确保下载链接是正确的,并且指向的是`.key`文件的原始内容,而不是网页或其他格式。
2. **添加公钥到APT**:
下载完公钥文件后,使用`apt-key`命令将其添加到APT的密钥环中:
```bash
sudo apt-key add ros2407.key
```
这将允许APT验证来自ROS软件源的软件包签名。
3. **更新APT软件包列表**:
添加公钥后,再次运行`sudo apt update`以更新软件包列表。此时,应该不会再出现签名验证错误。
4. **安装ROS**:
一旦APT能够成功验证软件源,就可以安装ROS了。例如,安装ROS 2 Jazzy版本的完整桌面环境:
```bash
sudo apt install ros-jazzy-desktop-full
```
按照这些步骤操作后,应该能够解决签名验证问题,并成功安装ROS。如果在安装过程中遇到其他问题,请检查网络连接、软件源设置或查看相关的ROS安装文档。