当前位置: 首页 > java >正文

记录一次 apt-key curl导入失败的处理方式

在配置 Kubernetes APT 仓库的过程中,我们通常会执行如下命令来添加阿里云的 GPG 公钥:

curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -

但这次在某台新机器上执行时,出现了访问失败的问题。具体表现为 curl 命令无法成功连接,导致 apt-key 添加失败。该问题可能与网络、DNS、代理、防火墙等因素有关。

问题表现

执行命令时报错如下:

gpg: no valid OpenPGP data found.

aliyun 可能突然抽风了,这个地址怎么都访问不了,但我需要导入它的 apt-key.gpg

至于为何不用其他源,是因为要尽可能统一环境

解决思路:导出已有的 apt-key 并导入到新机器

幸运的是,我之前在另一台机器上成功添加过该公钥,于是想到是否可以导出密钥文件再导入到当前机器。这个方法验证有效,步骤如下:

1. 在已有公钥的老机器上导出 key

首先确认该 key 已经被正确添加:

apt-key list

你应该能看到形如如下的条目(一般含有 AliyunKubernetes 的说明):

但这里阿里云的 key 是叫 cloud-...,我是通过按时间来找到这个对应的 key 的。

pub   rsa2048 2022-05-21 [SC]A362 B822 ... ...
uid           [ unknown] Rapture Automatic Signing Key (cloud-rapture-signing-key-2022-03-07-08_01_01.pub)
sub   rsa2048 2022-05-21 [E]

然后通过以下命令导出该 key:

apt-key export "A362 B822 ... ..." > aliyun-k8s.gpg

将其中的 A362 B822 ... ... 替换为实际的 Key ID(可以从 apt-key list 中找到)。

2. 将导出的 key 拷贝到目标机器

比如使用 scp

scp aliyun-k8s.gpg user@target-ip:/tmp/

3. 在目标机器导入该 key

登录目标机器,执行:

apt-key add /tmp/aliyun-k8s.gpg

看到如下提示表示导入成功:

OK

添加 aliyun 源,并 apt 更新:

echo 'deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main' > /etc/apt/sources.list.d/kubernetes.list
apt update

至此,APT 源就可以正常使用了。


总结

当无法联网或因为各种网络问题导致无法直接访问 GPG key 时,从已有机器导出 key 再导入,是一个非常实用的替代方案。这在企业内网、离线环境或者对外网访问有限制的情况下非常常见。

http://www.xdnf.cn/news/12322.html

相关文章:

  • 阶乘的因数
  • 算法篇 八大排序(冒泡 插入 选择 堆 希尔 快排 归并 计数)
  • Linux中INADDR_ANY详解
  • [蓝桥杯]堆的计数
  • rocketmq索引
  • 《最长公共子序列》题集
  • Educational Codeforces Round 179 (Rated for Div. 2)
  • 2025年5月月赛 乙组T1~T3
  • RPG22.处理武器碰撞
  • 所有CSS选择器
  • 2025爱分析·银行数字化应用实践报告|爱分析报告
  • 策略梯度核心:Advantage 与 GAE 原理详解
  • 苍穹外卖|学习笔记|day06
  • Day13
  • Grafana-ECharts应用讲解(玫瑰图示例)
  • 定时任务的 cron 表达式
  • OpenEuler24.03 部署RagFlow学习记录(PVE虚拟化环境)
  • 实验科学中策略的长期效应评估学习笔记
  • Day45 Python打卡训练营
  • 图像分割算法入门:从基础到FCN
  • Bean的作用域
  • 代付系统:功能解析与多场景应用深度解读
  • 8天Python从入门到精通【itheima】-69~70(字符串的常见定义和操作+案例练习)
  • 软考 系统架构设计师系列知识点之杂项集萃(81)
  • Spring Bean是否是线程安全的
  • 虎扑正式易主,迅雷完成收购会带来什么变化?
  • Postman常见问题及解决方法
  • 红花基因组2-文献精读141
  • springBoot服务之间的转发
  • el-tabs 切换时数据不更新的问题