Обновить ключ PGP в локальном репозитории apt.

Мы используемSonatype Nexus Repository Managerдля размещения репозиториев. GPGСрок действия ключа одного из них недавно истек, и его необходимо обновить. Я думал, что будет достаточно сгенерировать новые пары ключей (как описано в документации официального сайта), вставить новый закрытый ключ через пользовательский интерфейс Nexus и новую парольную фразу, а затемapt-key addновый открытый ключ в клиентской системе, и все будет хорошо. Вместо этого происходит то, что все еще говоритNO_PUBKEY <old_id>. Я понятия не имею, откудаaptберет информацию о том, что он пропускает старый ключ и не «синхронизирует» новый ключ. Я также пытался удалить содержимое/var/lib/apt/lists/каталог перед вызовомapt update. Что мне не хватает?

РЕДАКТИРОВАТЬ: все запускается в чистом докере, куда добавляется только новый ключ.apt-key add public.gpg.keyи новый репозиторий для/etc/apt/sources.list,echo "deb <repo_url> bionic main" >> /etc/apt/sources.list

1 ответ

Мне удалось решить проблему. Репозиторий nexus apt создает две папки. Одного зовут, другого зовутpackages. Вmetadataпапка с файламиRelease,InReleaseиRelease.gpgсоздаются. Они не восстанавливаются автоматически при изменении ключа в пользовательском интерфейсе. Чтобы принудительно восстановить эти файлы, необходимо удалить папку и загрузить пакет. Это приведет к регенерации папки метаданных со всеми соответствующими файлами в ней. После этой операции ключи работают.

Другие вопросы по тегам