Как удалить ключ GPG из репозитория yum?

Как удалить ключ GPG из репозитория yum?

У меня есть собственный репозиторий RPM в Artifactory, и недавно были включены ключи подписи GPG.

При запуске sudo yum check-updatesмне было предложено добавить ключ:

Retrieving key from https://artifactory.example.com/myrepo/repodata/repomd.xml.key
Importing GPG key 0x12345678:
 Userid     : "John Doe <[email protected]>"
 Fingerprint: 1234 5678 90ab cdef 1234 5678 90ab cdef 1234 5678
 From       : https://artifactory.example.com/myrepo/repodata/repomd.xml.key

Я добавил ключ, что было успешно. Однако, я хотел бы теперьудалятьключ. Мне нужно добавить ключ программным способом (например, через Ansible) на несколько серверов, поэтому я хотел бы воспроизвести то же поведение, что и раньше (когда мне предлагалось добавить ключ), чтобы я мог подтвердить, что добавление ключа программным способом изменяет это поведение.

Я пробовал использовать yum-config-managerдля сброса gpgkey, но поведение осталось прежним (yum не предлагает мне принять ключ):

sudo yum-config-manager --setopt=artifactory.gpgkey='' --save

Я дополнительно удалил кэш yum ( sudo yum clean allи sudo rm -rf /var/cache/yum).

Как удалить этот ключ из конфигурации репозитория yum?

Информация о версии:

$ yum --version
3.4.3

решение1

Используя rpm, вы можете вывести список ключей и удалить их.

[root@apps2 ~]# rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
gpg-pubkey-f4a80eb5-53a7ff4b    gpg(CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>)
gpg-pubkey-352c64e5-52ae6884    gpg(Fedora EPEL (7) <[email protected]>)
[root@apps2 ~]# rpm -e gpg-pubkey-352c64e5-52ae6884
[root@apps2 ~]# rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
gpg-pubkey-f4a80eb5-53a7ff4b    gpg(CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>)
[root@apps2 ~]#

решение2

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

  • /var/lib/yum/repos/x86_64/7/artifactory/gpgdir
  • /var/lib/yum/repos/x86_64/7/artifactory/gpgdir-ro

Мне удалось удалить ключи GPG из этих связок ключей:

sudo gpg --homedir /var/lib/yum/repos/x86_64/7/artifactory/gpgdir --delete-key 12345678
sudo gpg --homedir /var/lib/yum/repos/x86_64/7/artifactory/gpgdir-ro --delete-key 12345678

Запуск sudo yum check-updateв этот момент все еще не предложил мне принять ключ. Я запустил sudo yum clean metadata, и после этого sudo yum check-updateмне снова предложили принять ключ GPG.

Я нашел страницу PackageCloud наYUM GPG-ключипомогли прийти к этому решению.

Связанный контент