gpg: сбой получения сервера ключей: соединение отклонено

Я пытаюсь установить ROS2 на Ubuntu 18.04.

Следующая команда выдает ошибку из-за отсутствия открытого ключа.

sudo apt update && sudo apt install curl gnupg2 lsb-release

Ошибка:

Hit:1 http://ppa.launchpad.net/webupd8team/y-ppa-manager/ubuntu bionic InRelease
Hit:2 http://de.archive.ubuntu.com/ubuntu bionic InRelease          
Hit:3 http://de.archive.ubuntu.com/ubuntu bionic-updates InRelease             
Get:4 http://de.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB] 
Get:5 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]    
Get:6 http://packages.ros.org/ros2/ubuntu bionic InRelease [2,565 B]           
Err:6 http://packages.ros.org/ros2/ubuntu bionic InRelease                     
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5523BAEEB01FA116
Reading package lists... Done                                  
W: GPG error: http://packages.ros.org/ros2/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5523BAEEB01FA116
E: The repository 'http://packages.ros.org/ros2/ubuntu bionic 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.

Я попробовал следующие способы получить ключ:

sudo apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 5523BAEEB01FA116

а также

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5523BAEEB01FA116

и y-ppa-manager ("Попробуйте импортировать все недостающие ключи GPG")

sudo add-apt-repository ppa:webupd8team/y-ppa-manager  
sudo apt-get install y-ppa-manager 
y-ppa-manager

все вышеперечисленные методы дают следующую ошибку

gpg: keyserver receive failed: No keyserver available

* Я использую Ubuntu 18.04, используя виртуальную машину на хосте Windows 7 Как использовать сервер ключей? заранее спасибо

0 ответов

Вы можете получить копию текущего рабочего ключа из файла Dockerfile, используемого для ночной сборки образа Docker osrf / ros2: https://hub.docker.com/r/osrf/ros2/dockerfile

# setup ros2 keys
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

Однако это не перспективное решение, потому что я изначально использовал другой ключ для ROS2 Crystal, а затем этот ключ внезапно перестал работать (у нас также есть собственные регулярные сборки), и я получил ту же ошибку, что и вы. Оказывается, мне пришлось обновить нашу сборку новыми ключами.

Я думаю, что лучшим решением будет просто использовать предварительно созданную среду ROS2, доступную в виде образа Docker. Таким образом, ключи обновляются при обновлении.

docker pull osrf/ros2:nightly
Другие вопросы по тегам