Не удается решить ошибку GPG

17

Я побежал sudo apt-get updateи в конце у меня есть эти ошибки:

Fetched 14,3 kB in 54s (264 B/s)
Reading package lists... Done
W: GPG error: http://archive.canonical.com saucy Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32
W: GPG error: http://extras.ubuntu.com trusty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 16126D3A3E5C1192
W: GPG error: http://dl.google.com stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A040830F7FAC5991
W: GPG error: http://archive.getdeb.net trusty-getdeb InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A8A515F046D7E7CF
W: GPG error: https://private-ppa.launchpad.net trusty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY E131728675254D99
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
W: GPG error: http://archive.ubuntu.com trusty-updates Release: 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 Release: 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-security Release: 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-proposed Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32

Кажется, мои недостающие ключи:

  • 40976EAF437D05B5
  • 3B4FE6ACC0B21F32
  • 16126D3A3E5C1192
  • A040830F7FAC5991
  • A8A515F046D7E7CF
  • E131728675254D99

Я видел, что большинство ответов говорят:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [MISSING KEY]

Я запустил это:

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.2LrTHdOU28 --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/amandeepgrewal-notifyosdconfig.gpg --keyring /etc/apt/trusted.gpg.d/apandada1-typhoon.gpg --keyring /etc/apt/trusted.gpg.d/brightbox-ppa.gpg --keyring /etc/apt/trusted.gpg.d/chris-lea-node_js-devel.gpg --keyring /etc/apt/trusted.gpg.d/chris-lea-node_js.gpg --keyring /etc/apt/trusted.gpg.d/colingille-freshlight.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg --keyring /etc/apt/trusted.gpg.d/diesch-testing.gpg --keyring /etc/apt/trusted.gpg.d/duh-golang.gpg --keyring /etc/apt/trusted.gpg.d/ferramroberto-gsharkdown.gpg --keyring /etc/apt/trusted.gpg.d/finalterm-daily.gpg --keyring /etc/apt/trusted.gpg.d/fkrull-deadsnakes.gpg --keyring /etc/apt/trusted.gpg.d/fossfreedom-byzanz.gpg --keyring /etc/apt/trusted.gpg.d/fossfreedom-packagefixes.gpg --keyring /etc/apt/trusted.gpg.d/gophers-go.gpg --keyring /etc/apt/trusted.gpg.d/leolik-leolik.gpg --keyring /etc/apt/trusted.gpg.d/linrunner-tlp.gpg --keyring /etc/apt/trusted.gpg.d/mactel-support-ppa.gpg --keyring /etc/apt/trusted.gpg.d/me-davidsansome-clementine.gpg --keyring /etc/apt/trusted.gpg.d/michael-gruz-canon-trunk.gpg --keyring /etc/apt/trusted.gpg.d/michael-gruz-canon.gpg --keyring /etc/apt/trusted.gpg.d/moka-stable.gpg --keyring /etc/apt/trusted.gpg.d/numix-ppa.gpg --keyring /etc/apt/trusted.gpg.d/nuvola-player-builders-beta.gpg --keyring /etc/apt/trusted.gpg.d/otto-kesselgulasch-gimp-edge.gpg --keyring /etc/apt/trusted.gpg.d/scopes-packagers-ppa.gpg --keyring /etc/apt/trusted.gpg.d/shutter-ppa.gpg --keyring /etc/apt/trusted.gpg.d/steam.gpg --keyring /etc/apt/trusted.gpg.d/sukso96100-budgie-desktop.gpg --keyring /etc/apt/trusted.gpg.d/ubuntu-sdk-team-ppa.gpg --keyring /etc/apt/trusted.gpg.d/ubuntu-x-swat-x-updates.gpg --keyring /etc/apt/trusted.gpg.d/vajdics-netbeans-installer.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-atom.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-brackets.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-java.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-sublime-text-3.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-themes.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-y-ppa-manager.gpg --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5
gpg: keyblock resource `/etc/apt/trusted.gpg.d/webupd8team-sublime-text-3.gpg': resource limit
gpg: keyblock resource `/etc/apt/trusted.gpg.d/webupd8team-themes.gpg': resource limit
gpg: keyblock resource `/etc/apt/trusted.gpg.d/webupd8team-y-ppa-manager.gpg': resource limit
gpg: requesting key 437D05B5 from hkp server keyserver.ubuntu.com
gpg: key 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

Я могу видеть unchanged: 1.
Я также пытался использовать y-ppa-managerэто также не решило проблему.

Что вызвало эти ошибки и как я могу их исправить?

Ионика Бизэу
источник
@ Whaaaaaat Это правильно. Я также попрошу моего брата проголосовать. Итак, будет 80 баллов. :-)
Ионика Бизэу
@ Whaaaaaat Математика такая сложная ... Хахаха! :-) Нет, это не обман.
Ионика Бизэ

Ответы:

37

Это похоже на следующую ошибку для меня.

Как исправить

От пользователя, который исправил это в отчете об ошибке:

Решением, которое работало для меня, было очистить /etc/apt/trusted.gpg.d, запустить обновление apt-get, а затем вручную добавить каждый заблокированный ключ в основной /etc/apt/trusted.gpg набор ключей с помощью apt-key. ADV, как описано выше.

Итак, в вашем случае вы должны сделать следующее (заявление об отказе: не смог проверить это):

sudo mv /etc/apt/trusted.gpg.d/ /etc/apt/trusted.gpg.d.backup
sudo mkdir /etc/apt/trusted.gpg.d
sudo chmod 755 /etc/apt/trusted.gpg.d

Затем для каждого ключа вам нужно:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5

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

Почему это появилось

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

Опять же из отчета об ошибке:

I asked about the "resource limit" message on the gnupg-users mailing list...
Based on Werner Koch's (the dev) answer...
...the secure apt related programs might be making gpg use more than the maximum number of keyrings that it can handle
noleti
источник
3
+1, похоже на работу. Обратите внимание, что --recv-keysподдерживаются разделенные пробелами значения. Итак, одна команда со всеми ключами. Кроме того, вы можете включить в свой ответ, почему эта проблема появилась?
Ионика Бизэ
Готово, спасибо за хорошие предложения! Дайте мне знать, если еще не хватает.
Нелети
1
Красиво сформулированный ответ. Я использовал Y-PPA-Manager вместо добавления всех ключей вручную, и это сработало. Теперь я могу обновлять и устанавливать программное обеспечение в обычном режиме (в том числе в Ubuntu Software Center и Software Updater). =)
Тамсин Михаил
1

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [MISSING KEY] работал на меня.

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A040830F7FAC5991
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.cmBVPKdUNm --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv-keys A040830F7FAC5991
gpg: requesting key 7FAC5991 from hkp server keyserver.ubuntu.com
gpg: key 7FAC5991: public key "Google, Inc. Linux Package Signing Key <linux-packages-keymaster@google.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1
Чже
источник
Этот ответ решил мою проблему!
Тактопода