Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 2
Рецепт был опубликован 31 января 2010 года в 20:33, а менялся 10 февраля 2020 года в 03:30.
Постоянная ссылка: http://www.nixp.ru/recipes/4.html
При установке пакетов в Ubuntu Linux, например, с помощью команды apt-get иногда возникает ошибка вида «W: GPG error: [..] Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY [..]». Обычно такая ситуация возникает после добавления нового репозитория в /etc/apt/sources.list с последующей попыткой установить пакет из этого репозитория.
Причина происхождения проблемы — отсутствие в вашей системе публичного GnuPG-ключа репозитория, из которого вы пытаетесь инсталлировать пакет (который, в свою очередь, подписан данным ключом). Хеш нужного ключа указывается в тексте ошибки после NO_PUBKEY (т.е. на месте второго «[..]»). Именно его и надо добавить в базу apt вашей системы для успешной установки пакета.
Чтобы это сделать, требуется выполнить две команды:
gpg --keyserver subkeys.pgp.net --recv KEY gpg --export --armor KEY | sudo apt-key add -
Здесь вместо KEY нужно подставить значение того GPG-ключа, который вы хотите добавить в свою базу. Так, например, если вы получали ошибку NO_PUBKEY F120156012B83718, вам потребуется выполнить следующие команды:
gpg --keyserver subkeys.pgp.net --recv F120156012B83718 gpg --export --armor F120156012B83718 | sudo apt-key add -
После успешного экспорта GPG-ключа в свою базу вы можете повторить попытку установить нужный вам пакет.
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
есть способ проще и элегантнее, возможно пригодится
sudo apt-get update
дождитесь строк типа
W: Ошибка: deb.opera.com unstable Release: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY F9A2F76A9D1A0061
F9A2F76A9D1A0061 — это КЛЮЧ, он разный для разных репозиториев
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com КЛЮЧ
если у вас прокси в сети, то
sudo apt-key adv --recv-keys --keyserver-options http-proxy=«адрес_прокси: порт» --keyserver keyserver.ubuntu.com КЛЮЧ
Спасибо тебе, добрый человек!
я нашёл однострочник! который ставит недостающие ключи
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com `sudo apt-get update 2>&1 | grep -o '[0-9A-Z]\{16\}$' | xargs`
у меня:
liho@liho-Aspire-5733Z:~/Загрузки$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com `sudo apt-get update 2>&1 | grep -o '[0-9A-Z]\{16\}$' | xargs`
Executing: /tmp/apt-key-gpghome.W9TrMdjINc/gpg.1.sh --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5 FEB6023DC27AA466
gpg: ключ FEB6023DC27AA466: импортирован открытый ключ «Vivaldi Package Composer KEY07 <packager@vivaldi.com>»
gpg: ключ 40976EAF437D05B5: импортирован открытый ключ «Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>»
gpg: Всего обработано: 2
gpg: импортировано: 2
gpg: invalid size of lockfile '/etc/apt/trusted.gpg.d/brave-browser-release.gpg.lock'
gpg: cannot read lockfile
gpg: can’t lock '/etc/apt/trusted.gpg.d/brave-browser-release.gpg'
gpg: ключ EFC4571D7C90E5AF: не найден открытый ключ: Общая ошибка
gpg: ошибка чтения '[stdin]': Общая ошибка
gpg: import from '[stdin]' failed: Общая ошибка
gpg: Всего обработано: 0
и:
liho@liho-Aspire-5733Z:~/Загрузки$ sudo apt-get update
Сущ:1 http://archive.canonical.com/ubuntu bionic InRelease
Сущ:2 http://ru.archive.ubuntu.com/ubuntu bionic InRelease
Пол:3 http://ru.archive.ubuntu.com/ubuntu bionic-security InRelease [88,7 kB]
Сущ:4 http://ppa.launchpad.net/alessandro-strada/ppa/ubuntu bionic InRelease
Игн:5 http://archive.canonical.com/ubuntu precise InRelease
Игн:6 https://repo.vivaldi.com/archive/deb stable InRelease
Пол:7 http://ru.archive.ubuntu.com/ubuntu bionic-updates InRelease [88,7 kB]
Пол:8 http://archive.canonical.com/ubuntu precise Release [8 180 B]
Пол:9 https://repo.vivaldi.com/archive/deb stable Release [3 840 B]
Пол:10 http://ru.archive.ubuntu.com/ubuntu bionic-backports InRelease [83,3 kB]
Сущ:11 http://ppa.launchpad.net/appgrid/stable/ubuntu bionic InRelease
Сущ:12 https://dl.winehq.org/wine-builds/ubuntu artful InRelease
Пол:13 https://repo.vivaldi.com/archive/deb stable Release.gpg [833 B]
Пол:14 http://archive.canonical.com/ubuntu precise Release.gpg [181 B]
Сущ:15 http://ppa.launchpad.net/gezakovacs/ppa/ubuntu bionic InRelease
Сущ:16 http://ppa.launchpad.net/kdenlive/kdenlive-stable/ubuntu bionic InRelease
Сущ:17 http://ppa.launchpad.net/rvm/smplayer/ubuntu bionic InRelease
Игн:13 https://repo.vivaldi.com/archive/deb stable Release.gpg
Игн:14 http://archive.canonical.com/ubuntu precise Release.gpg
Чтение списков пакетов… Готово
W: Ошибка GPG: https://repo.vivaldi.com/archive/deb stable Release: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY FEB6023DC27AA466
E: Репозиторий «https://repo.vivaldi.com/archive/deb stable Release» не подписан.
N: Обновление из этого репозитория нельзя выполнить безопасным способом, поэтому по умолчанию он отключён.
N: Информацию о создании репозитория и настройках пользователя смотрите в справочной странице apt-secure(8).
W: Ошибка GPG: http://archive.canonical.com/ubuntu precise Release: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY 40976EAF437D05B5
E: Репозиторий «http://archive.canonical.com/ubuntu precise Release» не подписан.
N: Обновление из этого репозитория нельзя выполнить безопасным способом, поэтому по умолчанию он отключён.
N: Информацию о создании репозитория и настройках пользователя смотрите в справочной странице apt-secure(8).
не понимаю, что с Vivaldi и почему:
Вам же английским по белому пишут:
gpg: invalid size of lockfile '/etc/apt/trusted.gpg.d/brave-browser-release.gpg.lock'
gpg: cannot read lockfile
gpg: can’t lock '/etc/apt/trusted.gpg.d/brave-browser-release.gpg'
Получается, что не импортируется ключ, потому что не может залочить keyring.
Ищете ключ от пользователя, как описано в статье: