Я создаю пакет, который автоматически устанавливает некоторые репозитории на все хосты в локальной сети. Пакет будет доступен из центрального хранилища.
Я обнаружил, что списки репо могут быть удалены в /etc/apt/sources.list.d/*.list. Теперь мне нужно импортировать их ключи, например, , этот . Однако, когда я помещаю его в «/etc/apt/trusted.gpg.d/Opera.gpg», apt-get update
выдает мне множество NO_PUBKEY
ошибок для всех репо, которые у меня есть, включая Opera !
Что не так? :)
Ключи, загруженные из репозиториев, должны быть объединены в новый набор ключей GPG, чтобы их можно было перенести в /etc/apt/trusted.gpg.d/*.gpg, например:
gpg --no-default-keyring --keyring ./Opera.gpg --import Opera.key
sudo cp Opera.gpg /etc/apt/trusted.gpg.d/Opera.gpg
Кроме того, вы можете использовать apt-key
для добавления ключа вместо того, чтобы вручную перетаскивать файл по этому пути. Предполагая, что вы сохранили файл как Opera.key
:
sudo apt-key add Opera.key
Вы можете даже загрузить и импортировать файл ключа на лету, вместо того, чтобы сохранить его в локальном файле:
wget -q -O - http://deb.opera.com/archive.key | sudo apt-key add -
[ 117] Apt-key управляет содержимым основного файла /etc/apt/trusted.gpg
, а не использует каталог, что может оказаться для вас удобным или обременительным.
На самом деле вы можете получить лучшее из обоих миров: создайте дополнительную связку ключей в /etc/apt/trusted.gpg.d/
и используйте apt-key
вместо gpg
напрямую.
Если у вас уже есть локальный файл ключа, например Opera.key
, выполните следующую команду:
sudo apt-key --keyring Opera.gpg add Opera.key
Конечно, вы все равно можете импортировать ключ напрямую, как продемонстрировал MestreLion:
[ 111]