Обновите GPG SignWith в публичном репозитории, подготовленном с помощью reprepro.

У меня есть публичное репо с двумя доступными пакетами. Это настроено с repreproи вещь подписана ключом GPG, на который ссылается инструкция в . Пакеты добавляются с reprepro -b public/ --ask-passphrase includedeb focal mypackage_amd64.deb.

Поскольку срок действия ключа GPG истек, мне нужно установить новый. Поэтому я сделал следующие шаги:

  1. Сгенерировать новый ключ GPG gpg --gen-key.

  2. Экспортируйте ключ с помощью gpg --armor --export 9B5BBD0820B7326B > repo.ascв папке репо, чтобы пользователи могли wget -q http://repo.example.com/repo.asc -O- | sudo apt-key add -

  3. Изменено каждые SignWithлинии в public/conf/distributionsчтобы соответствовать этому новому gpg.

Теперь, когда я получаю файлы ( http://repo.example.com/public/conf/distributions , http://repo.example.com/repo.asc ), все кажется правильным.

Но apt updateеще жалуются:

Err:1 http://repo.example.com/public focus InRelease
Следующие подписи недействительны: EXPKEYSIG 8320586119BDB444 Автор User.Name@example.com

Что 8320586119BDB444соответствует предыдущей GPG. Чего не хватает в этой процедуре?

1 ответ

Написание вопроса от начала до конца иногда помогает понять, чего не хватает :)

Мне просто нужно было повторно сгенерировать файлы репо с помощью следующих команд:

      reprepro -b public/ --ask-passphrase export focal
reprepro -b public/ --ask-passphrase export bionic
Другие вопросы по тегам