Який найпростіший спосіб вирішити помилки 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.