Как исправить ошибку пропущенного ключа apt-get после добавления источника deb для пакета?

3543
crobar

Я использую Mint Linux 17. Я попытался установить пакет debian, добавив репозиторий в мой список исходных кодов следующим образом:

# add heroku repository to apt echo "deb http://toolbelt.heroku.com/ubuntu ./" > /etc/apt/sources.list.d/heroku.list  # install heroku's release key for package verification wget -O- https://toolbelt.heroku.com/apt/release.key | apt-key add - 

(на самом деле это из сценария, предоставленного поставщиком пакета). Однако после этого и запуска apt-get updateя получаю ошибку ключа GPG:

Reading package lists... Error! W: GPG error: http://download.opensuse.org Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY D54CC349F42D5F07 E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/packages.linuxmint.com_dists_qiana_import_i18n_Translation-en E: The package lists or status file could not be parsed or opened. Reading package lists... Error! E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/packages.linuxmint.com_dists_qiana_import_i18n_Translation-en E: The package lists or status file could not be parsed or opened. 

Поэтому после поиска в Google я попытался:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D54CC349F42D5F07 

Теперь я получаю:

Reading package lists... Error! W: GPG error: http://download.opensuse.org Release: The following signatures were invalid: KEYEXPIRED 1307152882 E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/packages.linuxmint.com_dists_qiana_import_i18n_Translation-en E: The package lists or status file could not be parsed or opened. 

Потому что срок действия ключа истек. Теперь обновление apt-get всегда завершается с этой ошибкой.

Итак, как я могу исправить мою теперь сломанную систему пакетов? Меня не беспокоит сохранение списка новых источников. Я просто хочу вернуться к возможности apt-get updateснова бежать .

РЕДАКТИРОВАТЬ

при выполнении apt-key listвыявляется следующий проблемный ключ:

pub 1024D/F42D5F07 2009-03-26 [expired: 2011-06-04] uid home:felfert OBS Project <home:felfert@build.opensuse.org> 

Я бегу apt-key del F42D5F07, но теперь при беге apt-get updateя возвращаюсь к:

W: GPG error: http://download.opensuse.org Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY D54CC349F42D5F07 
1

1 ответ на вопрос

1
Optichip
sudo apt-key list sudo apt-key del [bad key] 

Посмотрите на ваши ключи, выясните, какие из них плохие, и удалите их, а затем попробуйте обновить apt-get снова.

Спасибо, это возвращает меня к ошибке "пропущенный ключ", см. Мою правку в вопросе. Это всего лишь предупреждение, и могу ли я его игнорировать? crobar 9 лет назад 0
Ну, это ошибка в репо, вам нужно это репо? проверьте ваш /etc/apt/sources.list и отметьте репо по ошибке, пока вы не сможете получить новый подписанный ключ для него. Optichip 9 лет назад 0
Я закомментировал содержимое `/ etc / apt / sources.list.d / heroku.list`, но я все еще получаю то же предупреждение. Где-нибудь еще мне нужно это сделать? crobar 9 лет назад 0