如何不使用apt-key从keyserver.ubuntu.com添加Debian/Ubuntu仓库密钥?
仅靠密钥ID添加APT仓库密钥的方法(适配Debian 11+/Ubuntu)
自Debian 11起,apt-key命令已被弃用,后续版本会彻底移除。现在添加APT仓库密钥的标准做法是:将密钥文件放到/usr/share/keyrings/目录,并在仓库配置文件中指定signed-by=参数。
多数软件会直接提供GPG密钥的下载链接(二进制或ASCII armored格式),但如果手头只有密钥ID,操作起来就有点棘手。下面是针对Ubuntu密钥服务器的简单解决办法,亲测有效:
操作步骤
- 从Ubuntu密钥服务器拉取密钥并保存到指定目录:
举个例子,假设密钥ID是gpg --no-default-keyring --keyring /usr/share/keyrings/[自定义密钥名].gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys [你的密钥ID]8B48AD6246925553,自定义密钥名用nodejs,命令就写成:gpg --no-default-keyring --keyring /usr/share/keyrings/nodejs.gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 8B48AD6246925553 - 配置仓库源时,务必加上
signed-by参数指定密钥路径:echo "deb [signed-by=/usr/share/keyrings/nodejs.gpg] https://deb.nodesource.com/node_20.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodejs.list - 最后更新APT缓存:
sudo apt update
注意:该方法仅在Ubuntu密钥服务器上测试过,其他密钥服务器可能需要调整
--keyserver参数。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

