apt 中 apt.releases.hashicorp.com 的 NO_PUBKEY

问题描述 投票:0回答:4

运行

sudo apt update
时,出现以下错误:

Err:4 https://apt.releases.hashicorp.com focal InRelease                                                                               
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AA16FCBCA621E701

我该如何解决这个问题?

ubuntu vagrant apt gpg-signature
4个回答
14
投票

删除

/etc/apt/sources.list.d/
下现有的Hashicorp文件,然后按照官方指南

sudo -s
wget -O- https://apt.releases.hashicorp.com/gpg |
    gpg --dearmor > /usr/share/keyrings/hashicorp-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" > /etc/apt/sources.list.d/hashicorp.list
apt update

0
投票

GPG 密钥已过时或丢失。

运行此代码以删除过时的密钥

sudo rm /usr/share/keyrings/hashicorp-archive-keyring.gpg

这是获取当前密钥:

curl https://apt.releases.hashicorp.com/gpg | gpg --dearmor > /usr/share/keyrings/hashicorp-archive-keyring.gpg

我在 root 下运行了最后一个(

sudo -s
),因为我无法让 sudo 与管道角色一起玩。不太清楚为什么


0
投票

所以问题出在使用的sources.list 文件上。 最终它链接到一个密钥环,该密钥环不包含密钥

AA16FCBCA621E701

就我而言,这是文件

/etc/apt/sources.list.d/hashicorp.list

deb [arch=amd64 signed-by=/usr/share/keyrings/terraform-archive-keyring.gpg] https://apt.releases.hashicorp.com jammy main

上面的注释(谢谢MacroMan),引导我到了这个(这创建了一个新的、有效的hashicorp-archive-keyring.gpg,他原来的指令不起作用,除非你以

su - root
运行,我从来没有这样做过) )

curl https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg

使用新的密钥环,编辑上述文件以将

terraform-archive-keyring.gpg
替换为
hashicorp-archive-keyring.gpg
,并且
sudo apt-get update
应该可以正常运行。

或者(我没有运行这个,但有人可能会发现它很有用,因为它使用

sudo tee
重新创建了sources.list,所以不需要像
>
那样以root身份运行)

echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee  etc/apt/sources.list.d/hashicorp.list

0
投票

警告表明 GPG 密钥文件 /etc/apt/trusted.gpg.d/mysql.gpg 的格式不受支持。当以 APT 密钥环不支持的格式添加密钥时,通常会发生这种情况。要解决此问题,我们可以以正确的格式重新导入密钥。

删除有问题的 GPG 密钥 删除不支持的 GPG 密钥文件:

sudo rm /etc/apt/trusted.gpg.d/mysql.gpg

以正确的格式添加 GPG 密钥 正确添加 MySQL GPG 密钥:

使用以下命令下载并添加密钥:

wget https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 -O - | sudo apt-key add -

验证并更新 验证密钥是否已正确添加:

apt-key list

更新包裹清单:

sudo apt update

附加配置 如果仍然无法识别密钥,您可以手动将其添加到 trust.gpg 密钥环中:

下载 GPG 密钥:

wget https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 -O /tmp/RPM-GPG-KEY-mysql-2022

将密钥转换为支持的格式并将其移动到受信任的密钥环:

gpg --no-default-keyring --keyring /tmp/mysql-keyring.gpg --import /tmp/RPM-GPG-KEY-mysql-2022
gpg --no-default-keyring --keyring /tmp/mysql-keyring.gpg --export > /tmp/mysql-keyring.asc
sudo mv /tmp/mysql-keyring.asc /etc/apt/trusted.gpg.d/mysql.gpg

再次更新包裹清单:

sudo apt update

通过执行这些步骤,您应该能够解决 GPG 密钥问题并正确配置 MySQL 存储库。如果您遇到任何其他问题,请提供确切的错误消息,以获得更有针对性的帮助。

© www.soinside.com 2019 - 2024. All rights reserved.