Який найпростіший спосіб вирішити помилки apt-get BADSIG GPG?


129

Я часто перетинаю це питання, і завжди доводиться шукати Google для відповіді. Хтось має постійне виправлення помилок BADSIG apt-get?

W: помилка GPG: http://download.virtualbox.org lucid Release: Наступні підписи недійсні: BADSIG 54422A4B98AB5139 Oracle Corporation (ключ підпису архіву VirtualBox)


Ви використовуєте apt-cacher-ng?
— lfaraone

4
Важливо, щоб ви розуміли, для чого використовуються підписи GPG на APT, підпис GPG підтверджує, що сховище містить пакети, надані з надійного джерела. Це забезпечує як цілісність, так і справжність. Щоразу, коли ви додаєте нове сховище від якогось провайдера, вам потрібно буде додати його ключ GPG.
— Жоао Пінто

наслідуйте приклад за посиланням - замініть код прикладу у пов'язаній відповіді кодами BADSIG у вашому запитанні.
— fossfreedom

fossfreedom, я не зміг прийняти це рішення для роботи над моєю системою. Тримали отримання "--keyserver", не зрозуміли. Рішення, запропоноване Dr.Ubuntu нижче, працювало для мене.
— Дірк

Подивіться також тут askubuntu.com/questions/67594/… Я думаю, що використовувані вами команди є правильними, ви просто не використовуєте правильний ключ.
— Бруно Перейра

Відповіді:


130

Ось (найпростіше) рішення:

Введіть такі команди в термінал:

$ sudo -i
# apt-get clean
# cd /var/lib/apt
# mv lists lists.old
# mkdir -p lists/partial
# apt-get clean
# apt-get update

Кредити: ubuntugeek.com

Редагувати:

Якщо помилка повториться (можливо, через кілька днів / місяців), відкрийте Nautilus як корінь> перейдіть до var/lib/apt> видалити папку "list.old">, а потім відкрийте папку "списки" та видаліть "часткову" папку. Тепер виконайте вищезгадані команди ще раз.


10
Це вирішує найбільш поширену для мене помилку - оновлення через Інтернет-з'єднання з проксі-сервером ("кафе" WiFi, для якого потрібен веб-вхід), що пошкоджує деякі мої списки, якщо я виходжу з системи або забуду ввійти під час оновлення.
— варильні панелі

3
Якою буде фактична помилка, якщо відповідь qbi не допоможе, але це робить?
— ArtOfCode

— Зі

5
Я б хотів, щоб ОП перевірила це як відповідь!
— HDave

@ArtOfCode: помилка точно така ж. Ця відповідь мені допомогла, але в Інтернеті ви знайдете лише метод, на який вказує qbi, і який ви можете знайти всюди в Інтернеті.
— 0xC0000022L

65

Важливою частиною вашого повідомлення про помилку є наступне жирним шрифтом :

W: помилка GPG: http://download.virtualbox.org lucid Release: Наступні підписи недійсні: BADSIG 54422A4B98AB5139 Oracle Corporation (ключ підпису архіву VirtualBox)

Скопіюйте матеріал жирним шрифтом, а потім відкрийте термінал і введіть:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 54422A4B98AB5139

тобто вставте, використовуючи SHIFT+ INSчисло, яке ви скопіювали - 54422A4B98AB5139

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


3
моя помилка була пов'язана з поганою репо, а не тільки ключ відсутній ... проте ваш відповідь, швидше за все , діють в протягом 99% випадків
— cmcginty

4
+1, тому що це дуже корисна річ, яку потрібно знати. Однак це не вирішило моєї проблеми.
— Казарк

21
Чи справді це працювало для когось?
— Jjed

6
BADSIG відрізняється від NO_PUBKEY. Для BADSIG відповідь нижче вирішив її. Я не впевнений, як я опинився в цій ситуації, але я мав BADSIG на 5 різних PPA навіть після імпорту ключів.
— mfisch

17
Я вважаю, що це може бути дуже небезпечним у ситуації, коли хтось намагається зробити щось неприємне (наприклад, людина в атаці в середині). Не просто додайте ключі від повідомлень про помилки. Додавайте лише ключі, яким ви довіряєте.
— gertvdijk

27

Спробуйте видалити ключ

sudo apt-key del 16126D3A3E5C1192

потім оновлення сховища

sudo apt-get update

Ви повинні отримати NO_PUBKEYпомилку замість BADSIGпомилки та

sudo apt-key finger

не повинен знайти ключ (називається "Архів автоматичного підпису архів Ubuntu Extras")

Тепер додайте ключ

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 16126D3A3E5C1192

Результат apt-key fingerповинен мати

pub   1024D/3E5C1192 2010-09-20
      Key fingerprint = C474 15DF F48C 0964 5B78  6094 1612 6D3A 3E5C 1192
uid                  Ubuntu Extras Archive Automatic Signing Key <ftpmaster@ubuntu.com>

Якщо це не працює, спробуйте

apt-get clean            # Remove cached packages
cd /var/lib/apt
mv lists lists.old       # Backup mirror info
mkdir -p lists/partial   # Recreate directory structure
apt-get clean
apt-get update           # Fetch mirror info

Джерело: цей потік форумів ubuntu


У мене було кілька помилок BADSIG, які включали навіть стандартні архіви Ubuntu. Коли я видалив клавішу VirtualBox, раптом усі ці помилки перетворилися на NO_PUBKEY. Потім, коли я додав клавішу VirtualBox, помилки зникають для всіх інших репостів. Так вийшло, що один поганий ключ призвів до помилок для багатьох інших непов'язаних репостів.
— Матеуш Стаховський

11

Ще один простіший спосіб усунення помилок BADSIG GPG - це програмне забезпечення під назвою Y PPA manager

sudo add-apt-repository ppa: webupd8team / y-ppa-manager
sudo apt-отримати оновлення
sudo apt-get install y-ppa-manager

Натисніть на Advanced
введіть тут опис зображення

А потім виберіть Fix all GPG Badsig errors
введіть тут опис зображення


3

Якщо після додавання ключа все ще виникає помилка:

  1. перейдіть до каталогу кетів apt-cacher-ng та видаліть запис virtualbox:

    cd /var/cache/apt-cacher-ng
    sudo rm -rf download.virtualbox.org
    

2

Знайдено інший сервер, який ми могли б використовувати:

gpg --keyserver hkp://subkeys.pgp.net --recv-keys [YOURKEYINQUESTION]
gpg --armor --export [YOURKEYINQUESTION] | sudo apt-key add -
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.