
Artifactory にカスタム RPM リポジトリがあり、最近 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 キーこの解決策に到達するのに役立ちました。