Я только что установил Ubuntu 12.04, и я добавил репо, и когда я сделал это apt-get update
, у меня пропал ключ gpg.
Следующая команда, кажется, не работает для меня:
apt-get update 2> /tmp/keymissing; for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //"); do echo -e "\nProcessing key: $key"; gpg --keyserver subkeys.pgp.net --recv $key && sudo gpg --export --armor $key | apt-key add -; done
Как решить эту проблему?
Ответы:
Мне понравилось это решение, повторно загрузите недостающие ключи с сервера ключей Ubuntu.
Для Ubuntu
В моем случае
Вот команда для добавления отсутствующего ключа, упомянутого в сообщении об ошибке.
Поэтому я беру недостающий ключ
2EA8F35793D8809A
и прошу keyserver.ubuntu.com добавить его в список ключей, которые у меня есть в apt.Для Linux Mint
Ваш сервер ключей немного отличается
keyserver.linuxmint.com
Альтернативные серверы ключей, чтобы попробовать
keyserver.ubuntu.com
источник
adkeys (){ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys "$1";}
и удаления дублированных или проблемных ключей, которые я использую для этого:grep -ril "pattern" /etc/apt | sudo xargs rm -f
--keyserver ha.pool.sks-keyservers.net
. Это пул ключей с высокой доступностью, который значительно увеличивает ваши шансы получить нужный ключ.Существует программное обеспечение, которое
Y PPA manager
может помочь исправить ошибки ключей GPG.Y PPA менеджер
Установить -
После того, как вы установите его , запустить его, а затем перейти к
advance
и выберите «Импортировать все недостающие ключи GPG»источник
sudo apt-get...
Использование автоматической загрузки
apt-key adv --recv-keys
может не работать за брандмауэром.В этом случае откройте веб-страницу Ubuntu Key Server в своем веб-браузере и найдите строку
0x<hexadecimal code of your missing key>
.Откройте ссылку в разделе паба . Сохраните содержимое ключа (от
-----BEGIN PGP PUBLIC KEY BLOCK-----
до-----END PGP PUBLIC KEY BLOCK-----
) в виде файла.Затем запустите:
Источник: http://opensourceforgeeks.blogspot.in/2013/04/w-gpg-error-httpppalaunchpadnet-precise.html
источник
сначала введите следующую команду в терминале
затем обновите свою систему, введя следующую команду в терминале
после этого не должно быть ошибок, и все должно работать нормально.
источник
sudo su
перед тем, как набрать мою команду вышеsudo su
ни в коем случае не правильный подход - в этом случаеsudo -s
сделал бы то, что вам нужно.sudo rm /var/lib/apt/lists/* -rf
(опция "r" вместо "v")sudo
иrm
опасно. Использование обоихrm
и*
опасно. Используйте три в одной и той же команде, и акула укусит вас или ваши файлы.Для Ubuntu 12.04 Precise: постоянное решение
на это сообщение об ошибке, возникающее после добавления нового хранилища и обновления списка хранилищ. Это связано с тем, что адрес сервера больше не действителен. Так что просто поменяйте адрес на хороший.
Откройте файл
~/.gnupg/gpg.conf
в текстовом редакторе.В терминале:
gedit ~/.gnupg/gpg.conf
затем в этом файле найдите следующую жирную строку (116-я строка) (которая должна быть по умолчанию, как показано ниже):
затем добавьте следующую жирную строку, чтобы в итоге получить следующий результат:
(добавьте # во вторую строку, как следует, чтобы закомментировать старый адрес)
Сохраните файл и попробуйте обновить снова:
В терминале:
sudo apt-get update
источник
На основании нелаарского ответа:
Сценарий сбрасывает все ошибки во временный файл, а затем перебирает их, импортируя отсутствующие ключи.
источник
Самый простой способ с Y PPA MAnager
Open Y PPA Manager из Dash
Введите ваш пароль администратора
Двойной щелчок по расширенной опции
Нажмите Попробуйте импортировать все недостающие ключи GPG
Нажмите Ok, чтобы исправить это
источник
Сначала введите следующую команду в терминале
затем обновите свою систему, введя следующую команду в терминале
после этого не должно быть ошибок, и все должно работать нормально.
источник
Для меня сработало сначала удалить ключ, а затем переустановить. Для этого я сделал следующее:
удаление с
Затем переустановите, набрав
источник
Я столкнулся с той же проблемой, добавив ppa (
ppa:nathandyer/vocal-stable
), он сломал мои репозитории. Я руководствовался от автора Web Upd8, как я могу попытаться это исправить, вот его шаги, которые работали мне.Сделайте резервную копию
.gpg
ключей, на случай, если что-то пойдет не так.Давайте создадим папку, в которой мы разместим нашу резервную копию.
mkdir ~/gpg-backups
Это создает резервные копии всех файлов в
/etc/apt/trusted.gpg.d/
папке.sudo cp /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/
Теперь мы удалим все
.gpg
ключи.sudo rm /etc/apt/trusted.gpg.d/
sudo cp /etc/apt/trustdb.gpg ~/gpg-backups/
sudo rm /etc/apt/trustdb.gpg
Установите менеджер y-ppa, чтобы импортировать все недостающие ключи GPG
Ссылка :
источник
sudo rm /etc/apt/trusted.gpg.d/*
. Пропускать*
в EOL невозможно, так как вы не можете удалять непустые каталоги с помощью,rm
когда-r
опция не указана. - Ах, и вы можете убить 2х птиц одним камнем за линиюsudo mv /etc/apt/trustdb.gpg ~/gpg-backups/
. Потому что, если вы переместите файл, вам не нуженrm
исходный файл впоследствии.Я хотел автоматически исправить подобные ошибки в скрипте bash. Для тех, кто заинтересован, это должно сделать свое дело:
источник
Если у вас есть что-то вроде этого:
Прежде всего попробуйте:
Вывод последней команды может быть:
Так что вам нужно пойти
/etc/apt/trusted.gpg.d/
и удалить неиспользуемые ключи, а затем повторитьapt-key adv
иaptitude update
источник
Бегать
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
источник
Эта проблема возникла у меня при установке 12.04 с использованием немецких настроек. В этом случае список репозиториев по умолчанию использует немецкие зеркальные репозитории. Если это так, вы можете отредактировать список репозиториев и изменить все немецкие зеркальные репозитории на стандартные репозитории Ubuntu.
Вы можете использовать следующий метод:
Поиск и замена в Nano с помощью Alt-r
Поиск (заменить):
/de.
Заменить:
/
Заменить все (нажмите A)
Сохранить файл Ctrl-x
Затем обновите свою систему, введя следующую команду в терминале:
После этого не должно быть ошибок, и все должно работать нормально.
источник