Package-Management

如何自動接受 epel gpg 密鑰

  • July 23, 2021

第一次從 epel 安裝軟體包時,系統會提示我是否要導入 GPG 密鑰。

請注意安裝 redis 時如何有 2 條“Is this ok”提示?

[root@us-devops-build02 yum.repos.d]# yum install redis
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
.. truncated for readability

Total download size: 213 k
Installed size: 668 k
Is this ok [y/N]: y
Downloading Packages:
redis-2.4.10-1.el6.x86_64.rpm                                                                                                                                                                                                                                                                          | 213 kB     00:00     
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Retrieving key from http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
Importing GPG key 0x0608B895:
Userid: "EPEL (6) <epel@fedoraproject.org>"
From  : http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
Is this ok [y/N]: y

這會導致 puppet 在新配置的機器上失敗,除非我先 ssh 進入機器並手動接受此密鑰的安裝。

  1. 為什麼 epel 需要在第一次安裝軟體包時下載密鑰?
  2. 我怎樣才能在我的圖像上自動安裝這個密鑰,這樣 puppet 就不會失敗?

yum 要求密鑰的原因是它不在 /etc/pki/rpm-gpg 中

ls /etc/pki/rpm-gpg/ | column
RPM-GPG-KEY-CentOS-6        RPM-GPG-KEY-CentOS-Security-6    RPM-GPG-KEY-CentOS-Debug-6
RPM-GPG-KEY-CentOS-Testing-6    RPM-GPG-KEY-puppetlabs

您可以通過以下 4 種方式之一導入密鑰:

  1. 使用rpm --import http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6 (由 slm 建議)
  2. 安裝一個包,然後等待提示(就像我在做的那樣)
  3. 使用 epel 提供的 RPM 包,它會同時安裝 repo 和 key。

sudo yum -y install http://mirror.pnl.gov/epel/6/i386/epel-release-6-8.noarch.rpm" 4. 手動將密鑰複製到正確的目錄。

引用自:https://unix.stackexchange.com/questions/132757