Когда вы пытаетесь установить программу из сторонних репозиториев разработчика программы или из PPA вы можете столкнуться с ошибкой gpg недоступен открытый ключ. Это не значит, что программа платная и вам надо приобрести к ней ключ. Дело в том, что для защиты репозиториев от подмены используется подписывание пакетов с помощью GPG ключей.
Для того чтобы пакетный менеджер мог проверить подпись пакета, который вы пытаетесь установить необходимо чтобы у вас в системе был GPG ключ этого репозитория. Для официальных репозиториев ключи поставляются автоматически, а вот для сторонних надо их вручную добавить. Давайте рассмотрим пути решения этой проблемы.
Ошибка GPG недоступен открытый ключ
Как вы можете видеть на снимке, программа сообщает какой именно репозиторий вызвал проблему и какого ключа не хватает:
Самый простой и правильный способ решить эту проблему - добавить ключ в систему. Обычно, там где вы нашли информацию о том как добавить репозиторий есть и информация как добавить его ключ. К тому же в выводе информации об ошибке пакетный менеджер сообщает какой ключ он ожидает увидеть. Вы можете попытаться искать такой ключ в Google или на серверах ключей Ubuntu.
В данном случае не хватает ключа от репозитория Google - 78BD65473CB3BD13. Можно попытаться получить его с серверов Ubuntu:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 78BD65473CB3BD13
Или с другого сервера:
sudo apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 78BD65473CB3BD13
Если у вас нет ключа от PPA или любого другого репозитория, связанного с разработчиками Ubuntu это должно помочь. Ну и ключ от репозитория Google там есть:
Если же вы получаете ошибку. Ищите данный ключ в интернете, если ключа нет на сайте разработчика, то его можно найти на различных форумах. Скачайте его и добавьте в систему такой командой:
sudo apt-key add /путь/к/файлу.gpg
Ещё одна альтернатива первому способу - попытаться использовать графическую утилиту Y-PPA-Manager от webupd8. Для её установки выполните такие команды:
sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt install y-ppa-manager
Затем запустите программу из главного меню или терминала. В главном окне программы выберите Advanced:
В открывшемся окне выберите Try to import all missing GPG keys, а потом дождитесь завершения работы утилиты:
После того как ключ добавлен вы можете снова попытаться импортировать репозитории и на этот раз у вас должно всё получится.
Выводы
В этой небольшой статье мы рассмотрели что делать когда возникает ошибка gpg недоступен открытый ключ и как исправить эту ошибку. Даже не думайте, что что можно обойтись без ключа. Все методы, которые позволяли просить APT игнорировать проверку ключей в современных версиях дистрибутива уже не работают. Если у вас остались вопросы, спрашивайте в комментариях!
Спасибо большое ! Перерыл весь инет потратил пол дня пока не нашёл эту статью. Помогла только программа y-ppa-manager !!!
Спасибо! Помогло: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 78BD65473CB3BD13
Операционная система: Kubuntu 20.04
Версия KDE Plasma: 5.18.5
Версия KDE Frameworks: 5.68.0
Версия Qt: 5.12.8
Версия ядра: 5.4.0-81-generic
Архитектура: 64-битная
Процессоры: 4 × Intel® Core™ i5 CPU M 460 @ 2.53GHz
Память: 3,7 ГиБ ОЗУ
После обновления на 22.04 выскакивает ошибка отстутсвия публичного ключа 871920D1991BC93C.
Команда sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C дает ответ gpg: сбой при получении с сервера ключей: Сервер указал на сбой
Установить Y-PPA-Manager тоже не получается по той же причине отсутствия публичного ключа 871920D1991BC93C.
Замкнутый круг получается.
Спасибо огромное! У меня все получилось. После обновления до Ubuntu 22.04 не было двух ключей. Я их последовательно добавил командой sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
Теперь проблем нет!
8C718D3B5072E1F5 просрочен, не пойму как теперь жить без mysql5.6
Проблему не решил. У меня было так:
Был установлен proton-vpn. Потом я его удалил, а сейчас мне выдаётся
W: Ошибка GPG: https://repo.protonvpn.com/debian stable InRelease: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY 4EDE055B645F044F
Причём в источниках записи о protonvpn уже нет.
Сделал полное обновление базы удалив /var/lib/apt/lists/*. затем apt-get clean
и всё равно он мне пишет про этот протон. откуда он его берёт и как его удалить
Поддержка Яндекс Браузера
browser@support.yandex.ru
Теперь Яндекс Браузер для Linux будет использовать новый ключ шифрования GPG. Попробуйте, пожалуйста, обновить GPG вручную. Для этого запустите в терминале команду:
curl -s https://repo.yandex.ru/yandex-browser/YANDEX-BROWSER-KEY.GPG | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/yandex-browser.gpg
Альтренативный вариант – использовать утилиту apt-key:
sudo apt-key adv \
--recv-keys \
--keyserver keyserver.ubuntu.com \
F9A2F76A9D1A0061
Или же можно установить сразу все недостающие ключи:
sudo apt-key adv \
--recv-keys \
--keyserver keyserver.ubuntu.com \
$(sudo apt-get update 2>&1 | grep -o '[0-9A-Z]\{16\}$' | xargs)