Как добавить ключ репозитория
Перейти к содержимому

Как добавить ключ репозитория

  • автор:

How to add a GPG key to the apt sources keyring?

It is advisable that you add the Opera GPG key.

wget -qO — http://deb.opera.com/archive.key | sudo apt-key add —

Where do I add that?

I want to take the advice but I don’t know what part of software center to add gpg keys to.

7 Answers 7

This a a one line command to enter in terminal. See What is a terminal and how do I open and use it?

To use it, you would paste the entire command in the terminal (remember to use https):

But of course, it is daunting just copying and pasting commands without knowing what they are doing, and having no instructions on how to undo their actions, so here is a basic breakdown of the commands:

  • wget downloads something from a server. See wget manual for Ubuntu 16.04.
  • | is a pipline, which takes the output of one command and runs it into the input of another
  • apt-key add adds a package key

So it basically downloads the key and then adds it in one command.

I tested the command and it should work.

Now to verify that it worked, run this command (from this answer):

This will list the keys added and the key from Opera should be listed on the bottom like this:

The linked answer also shows that you can remove the key if needed, using:

with 30C18A2B being the key-id from the list.

After performing that command, and setting up the sources exactly like in your screen-shot, do:

(note there are some random warnings, but nothing that affects the install or software center operations)

  • Add repository enter image description here
  • Add key with apt-key
  • Install in terminal with apt-get
  • Search in dash enter image description here

Как добавлять репозитории программ и ключи подписей в Linux?

У начинающих пользователей Linux часто возникает вопрос, каким же образом установить какое-либо программное обеспечение (ПО), которого нет в стандартных репозиториях дистрибутива? Такая необходимость возникает по нескольким причинам. Например, необходимо использовать самую актуальную версию ПО в то время как в репозиториях всё ещё имеется более старая. Или же нужно использовать экзотические программные продукты, поддержка которых изначально не предусмотрена разработчиками дистрибутива. В данной статье будет изложено на некоторых примерах, каким образом добавлять репозитории в Linux и устанавливать стороннее ПО для Debian-систем, таких, как Ubuntu.

Концепция репозиториев программ в Linux

Как известно, философия распространения и поддержки ПО в Linux основана на репозиториях — специализированных хранилищах пакетов, содержащих файлы какого-либо ПО. Эти хранилища могут быть как удалёнными, так и локальными. Практически любой дистрибутив Linux снабжается стандартными репозиториями. Которые, в свою очередь, содержат ПО, собранное, оптимизированное и протестированное для данного дистрибутива. Доступ к репозиториям осуществляется с помощью систем управления пакетами (СУП), также специфичными для каждого дистрибутива. Например, для систем Ubuntu, да и вообще для Debian-ориентированных дистрибутивов в качестве стандартной СУП является утилита APT. Любая СУП позволяет (во всяком случае должна) искать, устанавливать, удалять пакеты, очищать их конфигурацию, определять зависимости и как не трудно догадаться — добавлять и удалять репозитории. Для всех перечисленных задач можно использовать как командную оболочку, так и графические утилиты с удобным и наглядным пользовательским интерфейсом.

Для обеспечения безопасности пользователей репозитории должны подписываться ключами шифрования. Чтобы гарантировать, что установка пакетов ПО производится из надёжного источника. Владельцы репозиториев, подписав его своим закрытым ключом, выкладывают в общий доступ соответствующий открытый ключ для этого репозитория. Открытый ключ необходим для добавления удалённого подписанного репозитория, это контролируется средствами СУП. Как правило, открытый ключ необходимо импортировать отдельно. На первый взгляд это не очевидно, однако необходимо для обеспечения безопасности системы.

Добавление репозиториев в командной оболочке

Как это ни странно, но эффективнее и удобнее производить управление репозиториями из командной оболочки. Как правило, в Debian-системах используется СУП APT, поэтому все представляемые далее команды будут относиться к этой системе управления пакетами.

Пусть требуется добавить репозиторий для загрузки и установки интегрированной среды разработки «CodeLite». Информацию о репозитории и даже исчерпывающие инструкции по его настройке в системе приведены на официальной странице Wiki проекта. Итак, с помощью команды apt-add-repository (используя sudo) нужно добавить адрес репозитория. Эта команда попытается добавить соответствующую запись в файл /etc/apt/sources.list :

Здесь следует обратить внимание на ту часть записи, в которой указывается версия дистрибутива (bionic), в данном случае это Ubuntu 18.04 Bionic Beaver. Для каждой из версий существуют свои особенности в сборке ПО и формировании для неё пакетов. Обычно разработчики делают сборки для нескольких версий дистрибутивов и указывают соответствующие ссылки для них. Это следует учитывать, иначе пакеты могут быть некорректно установлены.
Далее необходимо обновить индекс базы данных состояния пакетов, поскольку был добавлен новый репозиторий:

Теперь можно установить и сам пакет codelite:

В данном примере намеренно сначала добавляется репозиторий без импорта открытого ключа, чтобы продемонстрировать, что в случае отсутствия такого ключа APT заблокирует установку пакетов. При этом будет выдано соответствующее сообщение, предупреждающее, что репозиторий является непроверенным. О том, как добавлять ключи при настройке репозиториев, рассказывается в главе «Добавление ключей подписей репозиториев».

Необходимо также отметить, что вся информация о репозиториях для систем Ubuntu (а также и сами пакеты, которые можно найти и скачать вручную) хранится на ресурсе https://launchpad.net/. Хотя поиск и ручная навигация по данному ресурсу не самые удобные, но при желании найти то, что нужно вполне возможно. Например, страница с информацией о репозитории пакета yd-tools (графический индикатор для утилиты Яндекс.Диск) выглядит следующим образом:

Рис. 1: Сводная информация о репозитории на ресурсе launchpad.net для систем Ubuntu.

Рис. 1: Сводная информация о репозитории на ресурсе launchpad.net для систем Ubuntu.

Как можно видеть, в данном случае выбрана ветка репозитория для версии Ubuntu 18.04 и соответствующие ей ссылки для загрузки готовых пакетов (и если нужно, также и архивов с исходными кодами) необходимо добавлять в файл /etc/apt/sources.list . Также указан отпечаток (Fingerprint — открытый ключ) для данного репозитория.

Использование графических утилит

В данном случае добавление репозиториев происходит далеко не так быстро, как в консоли. Но для новичков и малоопытных пользователей данный способ гораздо более прост и нагляден. В Ubuntu существуют различные менеджеры пакетов, такие как Muon (в основном для KDE), Synaptic (для любых окружений рабочего стола), а также стандартная графическая утилита «Программы и обновления» для окружения Unity. Все перечисленные инструменты объединяет наличие в главном меню пункта для настройки «Источников ПО» или «Другого ПО». Например, для Muon это выглядит так:

Рис. 2: Доступ к редактированию списка репозиториев в Muon для KDE

Рис. 2: Доступ к редактированию списка репозиториев в Muon для KDE

Редактирование списка репозиториев в Muon:

Рис. 3: Диалог для редактирования списка репозиториев в Muon.

То же самое, но с использованием Synaptic. Доступ к редактированию репозиториев осуществляется через меню «Настройки» и далее, пункт «Репозитории»:

Рис. 4: Диалог управления репозиториями в Synaptic.

Рис. 4: Диалог управления репозиториями в Synaptic.

Теперь можно добавить все нужные репозитории (или удалить/отключить ненужные). Сохранить изменения и графическая утилита автоматически запустит обновление информации о пакетах. После этого с помощью встроенного поиска можно найти интересующий пакет и, отметив его для установки/удаления (или обновления) применить сделанные изменения.

Добавление ключей подписи репозиториев

Как уже было отмечено выше, в целях обеспечения безопасности пользователей, для загрузки пакетов из репозиториев необходимо импортировать в свою систему открытый ключ для этого репозитория. Если этого не сделать, то загрузка и установка пакетов будет временно заблокирована. А при попытке всё же их установить будет выдано сообщение примерно следующего вида:

Чтобы добавить нужный открытый ключ необходимы 3 вещи:

  1. Сам ключ (или последние его 8 символов), в данном случае это BE80DFE08E782DB0;
  2. Результат запроса к серверу ключей, на котором хранится закрытая часть ключа;
  3. Данные для добавления в систему открытого ключа.

Для второго пункта необходимо выполнить команду gpg с ключом «—keyserver». В качестве адреса нужно передать «keyserver.ubuntu.com»:

Данный вывод говорит о том, что запрос выполнен успешно. И теперь все необходимые данные для формирования открытого ключа есть. Теперь необходимо из данного набора данных выполнить экспорт открытой части ключа. И далее, добавить её в базу СУП APT. Это выполняется двумя командами, но удобнее их объединить сразу в один конвейер:

Теперь ключ добавлен и СУП сможет работать с репозиторием. Как видно, для добавления ключа использовалась команда APT apt-key add.
В заключение важно отметить, что при работе с ключами активно используется утилита gpg. Её значение для обеспечения безопасности и защиты данных среди свободных инструментов сложно переоценить. Умение работать с GPG, как можно видеть, существенно упрощает и работу с APT.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Как справиться с устареванием apt-key и add-apt-repository с помощью gpg в Ubuntu 22.04

Внимание: Эта статья была передена с помощью yandex translate я постарался сделать ее читабильной, я пречитал ее как минимум один раз после перевода и правок, приношу извинения за возможные неудобства при чтении, в комментариях оставил краткий пресказ статьи.

Введение

apt-key — это утилита, используемая для управления ключами, которые APT использует для аутентификации пакетов. Это тесно связано с утилитой add-apt-repository, которая добавляет внешние репозитории с использованием серверов ключей в список надежных источников установки APT. Однако ключам, добавленным с помощью apt-key и add-apt-repository, apt доверяет глобально. Эти ключи не ограничиваются авторизацией единственного хранилища, для которого они были предназначены. Любой ключ, добавленный таким образом, может быть использован для авторизации добавления любого другого внешнего хранилища, что представляет собой важную проблему безопасности.

Начиная с Ubuntu 20.10, использование apt-key выдает предупреждение о том, что инструмент устареет в ближайшем будущем; аналогичным образом, add-apt-repository также скоро устареет. Хотя эти предупреждения об устаревании строго не запрещают использовать apt-key и add-apt-repository с Ubuntu 22.04, но игнорировать их не рекомендуется.

В настоящее время рекомендуется использовать gpg вместо apt-key и add-apt-repository, и в будущих версиях Ubuntu это будет единственным вариантом. apt-key и add-apt-repository сами по себе всегда действовали как оболочки, вызывая gpg в фоновом режиме. Использование gpg напрямую отсекает посредника. По этой причине метод gpg обратно совместим со старыми версиями Ubuntu и может использоваться в качестве замены apt-key.

В этом руководстве будут описаны две процедуры, использующие альтернативы apt-key и add-apt-repository соответственно. Сначала будет добавлено внешнее хранилище с использованием открытого ключа с помощью gpg вместо использования apt-key. Во-вторых, в качестве дополнения в этом руководстве будет рассмотрено добавление внешнего репозитория с использованием сервера ключей с gpg в качестве альтернативы использованию add-apt-repository.

Предварительные настройки

Для работы с этим руководством вам понадобится сервер Ubuntu 22.04. Обязательно настройте это в соответствии с нашим руководством по первоначальной настройке сервера для Ubuntu 22.04, используя пользователя, не являющегося root, с привилегиями sudo и включенным брандмауэром.

Шаг 1 — Определение компонентов и ключевого формата

PGP, или Pretty Good Privacy — это проприетарная программа шифрования, используемая для подписи, шифрования и дешифрования файлов и каталогов. Файлы PGP — это файлы с открытым ключом, которые используются в этом процессе для проверки подлинности репозиториев как допустимых источников в apt. GPG, или GNU Privacy Guard, является альтернативой PGP с открытым исходным кодом. Файлы GPG обычно представляют собой брелоки (keyrings), которые представляют собой файлы, содержащие несколько ключей. Оба этих типа файлов обычно используются для подписи и шифрования файлов.

gpg — это инструмент командной строки GPG, который можно использовать для авторизации внешних репозиториев для использования с apt. Однако gpg принимает только файлы GPG. Чтобы использовать этот инструмент командной строки с файлами PGP, вы должны преобразовать их.

Elasticsearch представляет общий сценарий преобразования ключей и будет использоваться в качестве примера в этом разделе. (Прим. перев. пакет Elasticsearch будет использоваться как пример который будем устанвливать с помощью новых средств описанных в этой статье) Вы загрузите ключ, отформатированный для PGP, и конвертируете его в формат, совместимый с apt, с расширением файла .gpg. Сделаете это, выполнив команду gpg с флагом —dearmor. Затем добавите ссылку на репозиторий в список источников пакетов, прикрепив при этом прямую ссылку на ваш преобразованный ключ. И наконец, вы проверите этот процесс, установив пакет Elasticsearch.

Проекты, требующие добавления репозиториев с проверкой ключа, всегда будут предоставлять вам открытый ключ и URI репозитория, представляющий его точное местоположение. Для нашего примера Elasticsearch документация содержит эти компоненты на странице их установки.

Вот компоненты, указанные для Elasticsearch:

Далее вы должны определить, предоставляется ли вам файл PGP или GPG для работы. Вы можете проверить файл ключа, открыв URL-адрес с помощью curl:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch

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

——BEGIN PGP PUBLIC KEY BLOCK——
. . .

Несмотря на наличие GPG в URL-адресе, первая строка указывает, что на самом деле это файл ключа PGP. Обратите на это внимание, потому что apt принимает только формат GPG. Первоначально apt-key обнаруживал файлы PGP и автоматически преобразовывал их в GPG, вызывая gpg в фоновом режиме. Шаг 2 будет охватывать как ручное преобразование из PGP в GPG, так и то, что делать, когда преобразование не требуется.

Шаг 2 — Загрузка Ключа и преобразование в файл, совместимый с apt

При использовании метода gpg вы всегда должны загружать ключ перед добавлением в список источников пакетов. Ранее с помощью apt-key этот порядок не всегда соблюдался. Теперь вам необходимо указать путь к загруженному файлу ключа в вашем списке источников. Если вы не загрузили ключ, вы, очевидно, не можете ссылаться на существующий путь.

Пакет Elasticsearch предоставляет файл с ключом в формате PGP, поэтому после загрузки вы конвертируете его в формат GPG. В следующем примере для загрузки ключа используется curl, при этом загрузка передается в команду gpg. gpg вызывается с флагом —dearmor для преобразования ключа PGP в формат файла GPG, при этом -o используется для указания выходного файла.

В Ubuntu каталог /usr/share/keyrings является рекомендуемым местом для ваших преобразованных файлов GPG, так как это место по умолчанию, где Ubuntu хранит свои брелоки. В этом примере файл называется elastic-7.x.gpg, но подойдет любое имя:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg —dearmor -o /usr/share/keyrings/elastic-7.x.gpg

Это преобразует файл PGP в правильный формат GPG, что делает его готовым к добавлению в список источников для apt.

Примечание: Если загруженный файл уже был в формате GPG, вы можете вместо этого загрузить файл прямо в /usr /share /keyrings без его преобразования с помощью команды, подобной следующему примеру:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo tee /usr/share/keyrings/elastic-7.x.gpg

В этом случае выходные данные команды curl будут переданы в tee для сохранения файла в правильном расположении.

Шаг 3 — Добавление Репозитория в Список источников пакетов

Загрузив ключ в правильном формате файла GPG, вы можете добавить репозиторий в apt packages sources, явно связав его с полученным ключом. Для достижения этой цели существует три метода, все из которых связаны с тем, как apt находит источники. apt извлекает sources файлы из центрального файла sources.list, файлов .list в каталоге sources.list.d и .sources файлы в каталоге sources.list.d. Хотя между этими тремя вариантами нет функциональной разницы, рекомендуется рассмотреть три варианта и выбрать метод, который наилучшим образом соответствует вашим потребностям.

Вариант 1 — Добавление в sources.list напрямую

Первый метод включает в себя вставку строки, представляющей источник, непосредственно в /etc/apt/sources.list, основной файл, содержащий apt sources. В этом файле есть несколько источников, включая источники по умолчанию, поставляемые с Ubuntu. Вполне допустимо редактировать этот файл напрямую, хотя варианты 2 и 3 представляют собой более модульное решение, которое может быть проще редактировать и поддерживать.

Откройте файл /etc/apt/sources.list с помощью nano или предпочитаемого вами текстового редактора:

sudo nano /etc/apt/sources.list

Затем добавьте внешний репозиторий в нижнюю часть файла:

. . .
deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/elastic-7.x.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main

Эта строка содержит следующую информацию об источнике:

deb: source использует обычную архитектуру Debian.

arch=amd64,arm64: архитектуры, на которые будут загружены данные APT. Здесь это amd64 и arm64.

signed-by=/usr/share/keyrings/elastic-7.x.gpg: ключ, используемый для авторизации этого источника, и здесь он указывает на ваш файл .gpg, хранящийся в /usr/share/keyrings. Эта часть строки должна быть включена, в то время как ранее она не требовалась в методе apt-key. Это дополнение является наиболее важным изменением при переносе с apt-key, поскольку оно привязывает ключ к единственному репозиторию, который ему разрешено разрешать, и устраняет первоначальный недостаток безопасности в apt-key.

https://artifacts.elastic.co/packages/7.x/apt: URI, представляющий точное местоположение, в котором могут быть найдены данные в репозитории.

/etc/apt/sources.list.d/elastic-7.x.list: местоположение и имя нового файла, который будет создан.

/dev/null: вывод команды не является необходимым. Указание tee на это местоположение приводит к пропуску выходных данных.

Сохраните и завершите работу, нажав CTRL + O, затем CTRL + X.

Вариант 2 — Создание нового файла .list в sources.list.d

С помощью этого параметра вы вместо этого (Прим. перев. вместо создания файла в каталоке /etc/apt/sources.list как было в предыдущем варианте) создадите новый файл в каталоге sources.list.d. apt анализирует как этот каталог, так и sources.list для добавления в репозиторий. Этот метод позволяет вам физически изолировать дополнения репозитория в отдельных файлах. Если вам когда-нибудь понадобится позже удалить это дополнение или внести изменения, вы можете удалить этот файл вместо редактирования файла sources.list. Хранение ваших дополнений отдельно упрощает обслуживание, а редактирование sources.list может быть более подвержено ошибкам, что влияет на другие репозитории в файле.

Чтобы сделать это, передайте команду echo в команду tee для создания этого нового файла и вставьте соответствующую строку. В следующем примере файл называется elastic-7.x.list, но подходит любое имя, если оно является уникальным именем файла в каталоге:

echo «deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/elastic-7.x.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main» | sudo tee /etc/apt/sources.list.d/elastic-7.x.list > /dev/null

Эта команда идентична ручному созданию файла и вставке соответствующей строки текста.

Вариант 3 — Создание .источники Файл в sources.list.d

Третий метод записывает в .sources файл вместо файла .list. Этот метод является относительно новым и использует многострочный формат deb822, который менее неоднозначен по сравнению с объявлением deb . . ., хотя функционально идентичен. Создайте новый файл:

sudo nano /etc/apt/sources.list.d/elastic-7.x.sources

Затем добавьте внешний репозиторий, используя формат deb822:

Types: deb
Architectures: amd64 arm64
Signed-By: /usr/share/keyrings/elastic-7.x.gpg
URIs: https://artifacts.elastic.co/packages/7.x/apt
Suites: stable
Components: main

Сохраните и завершите работу после того, как вы вставили текст.

Это аналогично однострочному формату, и построчное сравнение показывает, что информация в обоих одинакова, просто организована по-разному. Следует отметить, что в этом формате не используются запятые при наличии нескольких аргументов (например, в amd64, arm64), а вместо этого используются пробелы.

Далее вы проверите этот процесс, выполнив тестовую установку.

Шаг 4 — Установка пакета из Внешнего репозитория

Вы должны вызвать apt update, чтобы предложить apt просмотреть файл main sources.list, а также все файлы .list и .sources файлы в sources.list.d. Вызов apt install без предварительного обновления приведет к неудачной установке или установке устаревшего пакета по умолчанию из apt.

Обновите свои репозитории:

sudo apt update

Затем установите свой пакет:

sudo apt install elasticsearch

На этом шаге ничего не меняется по сравнению с методом apt-key. Как только эта команда завершится, вы завершите установку.

Дополнение — Добавление Внешнего репозитория с использованием Сервера ключей

В этом разделе будет кратко рассмотрено использование gpg с сервером ключей вместо открытого ключа для добавления внешнего хранилища. Этот процесс почти идентичен методу открытого ключа, с той разницей, что вызывается gpg.

add-apt-repository — это аналог apt-key на базе сервера ключей, и оба они устарели. В этом сценарии используются разные компоненты. Вместо ключа и хранилища вам будет предоставлен URL-адрес сервера ключей и идентификатор ключа. В этом случае вы можете загрузить с сервера ключей непосредственно в соответствующий формат .gpg без необходимости что-либо конвертировать. Поскольку add-apt-repository скоро устареет, вместо этого вы будете использовать gpg для загрузки в файл, переопределяя поведение gpg по умолчанию при импорте в существующую связку ключей.

Key ID: E298A3A825C0D65DFD57CBB651716619E084DAB9

Во-первых, загрузите с сервера ключей напрямую с помощью gpg. Имейте в виду, что в зависимости от загружаемого трафика выполнение этой команды может занять некоторое время:

sudo gpg —homedir /tmp —no-default-keyring —keyring /usr/share/keyrings/R.gpg —keyserver keyserver.ubuntu.com —recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9

Эта команда включает в себя следующие флаги, которые отличаются от использования gpg с открытым ключом:

—no-default-keyring в сочетании с —keyring позволяет выполнять вывод в новый файл вместо импорта в существующую связку ключей, что является поведением gpg по умолчанию в этом сценарии.

—keyserver в сочетании с —recv-keys предоставляет конкретный ключ и местоположение, из которого вы загружаете.

—homedir используется для перезаписи расположения gpg по умолчанию для создания временных файлов. gpg необходимо создать эти файлы для выполнения команды, в противном случае gpg попытается выполнить запись в /root, что приведет к ошибке разрешения. Вместо этого эта команда помещает временные файлы в соответствующий каталог /tmp.

Затем добавьте репозиторий в файл .list. Это делается точно так же, как добавление внешнего хранилища с использованием открытого ключа путем передачи команды echo в команду tee:

echo «deb [arch=amd64 signed-by=/usr/share/keyrings/R.gpg] https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/» | sudo tee /etc/apt/sources.list.d/R.list > /dev/null

Затем обновите свой список репозиториев:

sudo apt update

Затем вы можете установить пакет:

sudo apt install r-base

Использование gpg для добавления внешних репозиториев аналогично между открытыми ключами и серверами ключей, с разницей в том, как вы вызываете gpg.

Заключение

Добавление внешнего репозитория с использованием открытого ключа или сервера ключей может быть выполнено через gpg, без использования apt-key или add-apt-repository в качестве посредника. Используйте этот метод, чтобы убедиться, что ваш процесс не устареет в будущих версиях Ubuntu, поскольку apt-key и add-apt-repository устарели и будут удалены в будущей версии. Добавление внешних репозиториев с помощью gpg гарантирует, что ключ будет использоваться только для авторизации одного репозитория, как вы предполагаете.

Как добавить ключ репозитория

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

Декабрь 19, 2011

При добавлении стороннего репозитория, в целях безопасности в ОС Debian и Ubuntu, принято добавлять ключ репозитория.
Очень часто на сайтах и
блогах выкладывают ссылки на репозитории, но ссылка на ключ не приводится.
Из-за чего возникают некрасивые надписи и различные ошибки в конце процесса обновления пакетов.

Если после обновления у Вас на экране возникает ошибка примерно следующего содержания:

Ошибка: http://wine.budgetdedicated.com jaunty Release: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY 58403026387EE263
Вы можете запустить ‘apt-get update’ для исправления этих ошибок

В данном примере не найден открытый ключ репозитория Wine. Адрес репозитория http://wine.budgetdedicated.com, публичный ключ 58403026387EE263. В вашем случае адрес и код ключа могут отличаться.
Для решения сложившейся проблемы нам потребуется:

1. Проверить упоминание ключа на официальных серверах. Это требуется для подтверждения подлинности репозитория.

Серверы расположены в порядке значимости, поэтому нахождение ключа хотя бы на одном сервере является положительным результатом.
# gpg —keyserver keyserver.ubuntu.com —recv 58403026387EE263
# gpg —keyserver pgp.mit.edu —recv 58403026387EE263
# gpg —keyserver keyserver.pgp.com —recv 58403026387EE263

В ответ на экране должно отобразиться следующее:

gpg: запрашиваю ключ 387EE263 с hkp сервера keyserver.ubuntu.com
gpg: ключ 387EE263: «Scott Ritchie » не изменен
gpg: Всего обработано: 1
gpg: неизмененных: 1

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

Об особых случаях будет рассказано ниже.

2. Следующим этапом добавляем недостающий ключ репозитория:
# gpg —export —armor 58403026387EE263 | sudo apt-key add —

В особых случаях добавить ключ репозитория в операционную систему будет эффективнее командой:

# sudo apt-key adv —recv-keys —keyserver keyserver.ubuntu.com 387EE263

где используется имя key-сервера нашедшего ключ и число отмеченное в пункте №1.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *