W: Ошибка GPG: http://ppa.launchpad.net точный выпуск: Следующие подписи не могут быть проверены, потому что открытый ключ недоступен:

44

Я получаю следующую ошибку, когда я делаю sudo apt-get update

W: GPG error: http://ppa.launchpad.net precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6AF0E940624A220

Я попробовал следующие способы после прочтения различных вопросов здесь, а также путем поиска в Google.

Я пытался

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6AF0E1940624A220

Это не помогло. Я тоже пробовал

sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys

Задумчивый порт 11371 (по умолчанию) может быть заблокирован из-за брандмауэра.

Я также попытался сбросить все следующим образом

sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update && sudo apt-get upgrade

Тем не менее я получаю ту же ошибку или получить обновление. Любое другое возможное решение, которое я могу попробовать?

Аникет Тхакур
источник
Вы пробовали все решения здесь? askubuntu.com/questions/13065/…
fossfreedom
Попробуйте:$ sudo apt-key adv --keyserver-options http-proxy=<proxy-server> --keyserver keyserver.ubuntu.com --recv 6AF0E1940624A220
Марсло

Ответы:

77

Второй подход, упомянутый в этой ссылке, работал для меня. Вручную загрузите ключ и добавьте его. Надеюсь, что это помогает другим.


Ссылка выше , дает подробное объяснение со скриншотами. У него также есть некоторые другие простые методы, которые можно попробовать, прежде чем делать это вручную. Поскольку он недоступен в некоторых регионах, позвольте мне описать метод, который работал для меня: Youtube .

  1. Перейдите на сервер открытых ключей OpenPGP . Там вы можете ввести свой ключ в Search Stringполе, оставив все остальное как есть, затем нажать «Поиск!».
    При поиске ключа всегда готовьтесь 0xк нему ! Это означает, что, например, вы должны искать 0x6AF0E1940624A220вместо 6AF0E1940624A220.
  2. Нажмите на ссылку, представленную в pubразделе. Это должно привести вас к странице, содержащей ключ. Заголовок страницы должен быть похож наPublic Key Server -- Get "0x6AF0E1940624A220"
  3. Скопируйте все из-под заголовка (начиная с -----BEGIN PGP PUBLIC KEY BLOCK-----) и сохраните его в файле (например key1).
  4. Получив файл, выполните следующую команду

    sudo apt-key add key1
    

Вы получите ответ «ОК».

И вы сделали. Повторите процедуру для других ключей, которые могут отсутствовать.

Аникет Тхакур
источник
Для тех, кто бросил вызов bash (большинство из нас!), Вот скрипт, который вы можете вставить в оболочку bash и нажать клавишу возврата, чтобы исправить эту проблему для всех ключей: sudo apt-get update 2> & 1 | \ grep NO_PUBKEY | \ sed -e ' s? ^. * NO_PUBKEY ?? ' | \ пока читаю _hash; делать \ Wget -O- " keyserver.ubuntu.com/pks/lookup?op=get&search=0x$ {_hash}" | \ Sudo APT-ключ добавить -; сделано
Майкл Миковски
Ubuntu Команда: $ sudo apt-key adv --keyserver-options http-proxy=<myProxy> --keyserver keyserver.ubuntu.com --recv <MISSED_PUBKEY_NUMBER>. Например, для 6AF0E1940624A220, команда должна быть: $ sudo apt-key adv --keyserver-options http-proxy=<proxy_server> --keyserver keyserver.ubuntu.com --recv 6AF0E1940624A220. Вдохновлен superuser.com/a/784913/112396
Марсло
1

Это упрощенная версия ответа Аникета:

for fingerprint in 40976EAF437D05B5 3B4FE6ACC0B21F32; do
  curl "http://keyserver.ubuntu.com/pks/lookup?op=get&fingerprint=on&search=0x$fingerprint" | \
    awk '/-----BEGIN PGP/{p=1} /-----END PGP/{print; p=0} p==1{print}' > key.txt;
  sudo apt-key add key.txt;
done

Поместите столько ключей, сколько вам нужно в этой первой строке.

Я добавил посторонние точки с запятой, чтобы вы могли сделать это однострочным, чтобы поместить в Dockerfile. Я понятия не имею, почему ранее работающая сборка контейнера теперь требует этого. Я получил эту ошибку до исправления:

W: GPG error: http://deb.nodesource.com trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1655A0AB68576280
W: GPG error: http://archive.ubuntu.com trusty-updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32
W: GPG error: http://archive.ubuntu.com trusty-backports InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32
W: GPG error: http://security.ubuntu.com trusty-security InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32
W: GPG error: http://archive.ubuntu.com trusty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32
Бруно Броноски
источник