Kee*_*ing 5 yum rpm gpg amazon-ec2 kubernetes
我正在尝试将kubernetes 存储库添加到我的Amazon Linux 2实例,并且在自动添加 GPG 密钥方面遇到了困难。
这是我的/etc/yum.repos.d/kubernetes.repo...
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
Run Code Online (Sandbox Code Playgroud)
然后我尝试导入 GPG 密钥:
~ # wget https://packages.cloud.google.com/yum/doc/yum-key.gpg \
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
~ # rpm --import *.gpg
Run Code Online (Sandbox Code Playgroud)
但是,当我运行任何yum命令时,它仍然不知道密钥:
# yum upgrade -y
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
kubernetes/signature | 454 B 00:00:00
Retrieving key from https://packages.cloud.google.com/yum/doc/yum-key.gpg
Importing GPG key 0xA7317B0F:
Userid : "Google Cloud Packages Automatic Signing Key <gc-team@google.com>"
Fingerprint: d0bc 747f d8ca f711 7500 d6fa 3746 c208 a731 7b0f
From : https://packages.cloud.google.com/yum/doc/yum-key.gpg
Retrieving key from https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
kubernetes/signature | 1.4 kB 00:00:00 !!!
https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64/repodata/repomd.xml: [Errno -1] repomd.xml signature could not be verified for kubernetes
Trying other mirror.
No packages marked for update
Run Code Online (Sandbox Code Playgroud)
即使我尝试手动接受它们,它仍然不起作用。
# yum upgrade
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
kubernetes/signature | 454 B 00:00:00
Retrieving key from https://packages.cloud.google.com/yum/doc/yum-key.gpg
Importing GPG key 0xA7317B0F:
Userid : "Google Cloud Packages Automatic Signing Key <gc-team@google.com>"
Fingerprint: d0bc 747f d8ca f711 7500 d6fa 3746 c208 a731 7b0f
From : https://packages.cloud.google.com/yum/doc/yum-key.gpg
Is this ok [y/N]: y <<<<< Yes, I accept it!
Retrieving key from https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
kubernetes/signature | 1.4 kB 00:00:01 !!!
https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64/repodata/repomd.xml: [Errno -1] repomd.xml signature could not be verified for kubernetes
Trying other mirror.
No packages marked for update
Run Code Online (Sandbox Code Playgroud)
如何添加密钥以便 YUM 接受它?
这是一个已知问题(请参阅https://github.com/kubernetes/kubernetes/issues/60134)。通过禁用 GPG 检查来解决它:repo_gpgcheck=0在/etc/yum.repos.d/kubernetes.repo.
感谢drakedevel,他写道:
我认为这是由于 Amazon Linux 2 提供了旧版本的 GnuPG,并且关于 repomd.xml.asc 签名的某些内容需要更新版本。
由于未知的关键位,GnuPG 2.0.22 完全拒绝存储库元数据上的签名,并假设来自密钥 BA07F4FB 的签名错误。我一直无法弄清楚它所指的是什么关键位——签名或密钥上似乎没有任何内容——但是 GnuPG 2.0.22 不高兴的任何事情很可能是根本原因。
这只会影响repomd 签名,所以没有理由像其他几个人建议的那样禁用gpgcheck。禁用 repo_gpgcheck 就足够了,并保留了包签名验证(尽管它仍然不是一个理想的解决方法......)
| 归档时间: |
|
| 查看次数: |
1172 次 |
| 最近记录: |