Я получаю следующую ошибку, когда делаю 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
, но я получаю ту же ошибку или получаю обновление. Любое другое возможное решение, которое я могу попробовать?
Это упрощенная версия ответа Аникета:
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
Второй подход, упомянутый в этой ссылке , работал для меня. Вручную загрузите ключ и добавьте его. Надеюсь, что это помогает и другим.
Ссылка выше предоставляет подробное объяснение со скриншотами. У него также есть некоторые другие простые методы, которые можно попробовать, прежде чем делать это вручную. Поскольку он недоступен в некоторых регионах, позвольте мне описать метод, который работал для меня: Youtube .
Search String
, оставив все остальное как есть, затем нажать «Поиск!». 0x
]! Это означает, что, например, вам нужно искать 0x6AF0E1940624A220
вместо 6AF0E1940624A220
. pub
. Это должно привести вас к странице, содержащей ключ. Заголовок страницы должен быть похож на Public Key Server -- Get "0x6AF0E1940624A220"
-----BEGIN PGP PUBLIC KEY BLOCK-----
) и сохраните его в файле (например, key1
). Получив файл, выполните следующую команду
sudo apt-key add key1
Вы получите ответ «ОК».
1123 И все готово. Повторите процедуру для других ключей, которые могут отсутствовать.