📅  最后修改于: 2023-12-03 15:20:44.925000             🧑  作者: Mango
在 Ubuntu 中使用 apt
命令时,可能会遇到以下错误信息:
W: GPG 错误:http://archive.ubuntu.com/ubuntu focal InRelease: 以下签名无法验证,因为公钥不可用:NO_PUBKEY XYZ
这个错误通常表示系统无法验证软件包的签名,因为缺少相应的公钥。
Ubuntu 使用 GNU Privacy Guard (GPG) 来签名软件包,并使用公钥来验证签名的有效性。如果系统缺少软件包的公钥信息,就无法验证软件包的签名。
要解决这个问题,可以使用以下方法之一:
请记住将 XYZ
替换为实际的公钥 ID。
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com XYZ
此命令将从键服务器下载并导入缺失的公钥。
如果你已经知道缺失的公钥是哪个,请将 XYZ
替换为实际的公钥 ID,并执行以下命令:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys XYZ
在某些情况下,你可能会获得一个公钥文件,你可以使用以下命令导入它:
sudo apt-key add <keyfile>
请将 <keyfile>
替换为实际的公钥文件路径。
如果你知道哪些公钥无效,可以使用以下命令删除它们:
sudo apt-key del XYZ
请将 XYZ
替换为实际的公钥 ID。
完成上述步骤后,运行以下命令以更新软件包列表:
sudo apt update
Ubuntu 上的 "以下签名无法验证,因为公钥不可用" 错误通常是由于缺少软件包的公钥导致的。通过导入缺失的公钥、补充缺少的公钥或删除无效的公钥,并更新软件包列表,通常可以解决这个问题。