Какой самый простой способ устранить ошибки apt-get BADSIG GPG?

129

Я часто пересекаюсь с этой проблемой, и мне всегда приходится искать ответы в Google. У кого-нибудь есть постоянное исправление ошибок BADSIG от apt-get?

W: Ошибка GPG: http://download.virtualbox.org lucid Выпуск: Следующие подписи были недействительными: BADSIG 54422A4B98AB5139 Oracle Corporation (ключ подписи архива VirtualBox)

cmcginty
источник
Вы используете apt-cacher-ng?
Ифараоне
4
Важно, чтобы вы понимали, для чего используются подписи GPG на APT, подпись GPG подтверждает, что в хранилище содержатся пакеты, предоставленные из надежного источника. Это гарантирует как целостность, так и подлинность. Каждый раз, когда вы добавляете новый репозиторий от какого-либо провайдера, вам нужно будет добавить его ключ GPG.
Жоау Пинту
следуйте примеру в ссылке - замените пример кода в связанном ответе на коды BADSIG в вашем вопросе.
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 от имени пользователя root> перейдите к var/lib/apt> удалить папку «lists.old»> затем откройте папку «списки» и удалите «частичную» папку. Теперь выполните вышеупомянутые команды еще раз.

Сринивас Голлапуди
источник
10
Это решает более распространенную для меня ошибку - обновление через интернет-соединение с прокси-сервером (WiFi-кафе, которому требуется веб-вход), который повреждает некоторые из моих списков, если я выхожу из системы или забываю войти во время обновления.
варенье
3
Какова будет настоящая ошибка, если ответ qbi не поможет, но это поможет?
ArtOfCode
Это также происходит со мной из-за: WiFi "кафе", которое требует входа в сеть
Postadelmaga
5
Я хотел бы, чтобы ОП проверил это как ответ!
HDave
@ArtOfCode: ошибка точно такая же. Этот ответ помог мне, но в Интернете вы найдете только метод, на который указывает qbi и который вы можете найти повсюду в Интернете.
0xC0000022L
65

Важной частью вашего сообщения об ошибке является следующее, выделенное жирным шрифтом :

W: Ошибка GPG: http://download.virtualbox.org lucid Выпуск: Следующие подписи были недействительными: BADSIG 54422A4B98AB5139 Oracle Corporation (ключ подписи архива VirtualBox)

Скопируйте материал жирным шрифтом, а затем откройте терминал и введите:

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

т.е. вставьте, используя SHIFT+ INSномер, который вы скопировали - 54422A4B98AB5139

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

QBi
источник
3
моя ошибка была связана с плохим репо, а не только с отсутствующим ключом ... однако ваш ответ, вероятно, действителен в 99% случаев
cmcginty
4
+1 потому что это очень полезная вещь, чтобы знать, как это сделать. Однако это не решило мою проблему.
Казарк
21
Это на самом деле работает для кого-нибудь?
Джед
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

Portablejim
источник
У меня было несколько ошибок BADSIG, которые включали даже стандартные архивы Ubuntu. Когда я удалил ключ VirtualBox внезапно, все эти ошибки превратились в NO_PUBKEY. Затем, когда я добавил ключ VirtualBox, ошибки исчезли для всех остальных репозиториев. Так что оказалось, что один плохой ключ вызывал ошибки для многих других не связанных репозиториев.
Матеуш Стаховски
11

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

sudo add-apt-repository ppa: webupd8team / y-ppa-manager
sudo apt-get update
sudo apt-get установить 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
    
cmcginty
источник
2

Найден другой сервер, который мы могли бы использовать:

gpg --keyserver hkp://subkeys.pgp.net --recv-keys [YOURKEYINQUESTION]
gpg --armor --export [YOURKEYINQUESTION] | sudo apt-key add -
Джек
источник