简而言之,我想在我的 Debian 12 系统上添加 HPE 存储库。我将存储库添加到了它自己的sources.list.d 列表中,而不是直接添加到sources.list 中,因为我听说这是不好的做法。每次更新时,我都会收到以下消息:
GPG 错误:http://downloads.linux.hpe.com/SDR/repo/mcp bookworm/current 版本:由于公钥不可用,无法验证以下签名:NO_PUBKEY C208ADDE26C2B797 E:存储库 'http: //downloads.linux.hpe.com/SDR/repo/mcp bookworm/current Release' 未签名。N:从这样的存储库进行更新无法安全地完成,因此默认情况下被禁用。N:有关存储库创建和用户配置详细信息,请参阅 apt-secure(8) 联机帮助页。
我检查过,gpg 密钥位于存储库中,我在研究时发现的只是 .pub 密钥而不是 .gpg 密钥。
编辑:是的,在我最初的研究过程中,我发现了这个 debian 论坛,但据了解 apt-key 命令已被贬值,所以我不介意。但是,如果在这种情况下可以使用 apt-key,那么我将使用它。抱歉搞混了。
EDIT2:所以我更改了源文件 mcp.list 以反映这一点: deb http://downloads.linux.hpe.com/SDR/repo/mcp/debian/ bookworm/12.80 non-free non-free-firmware
之后我运行了这些命令:
卷曲-fsSL https://downloads.linux.hpe.com/SDR/hpPublicKey2048.pub | gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048.gpgcurl -fsSL https://downloads.linux.hpe.com/SDR/hpePublicKey2048_key1.pub | gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048.gpg gpg --dearmor -o /usr/share/keyrings/hpePublicKey2048_key1.gpgcurl -fsSL https://downloads.linux.hpe.com/SDR/hpPublicKey2048_key1.pub | gpg --dearmor -o /usr/share/keyrings/hpePublicKey2048_key1.gpg gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048_key1.gpg
但我仍然没有任何效果,然后我尝试了该目录并更改为trusted.gpg.d的目录。现在这最终产生了更大的影响。现在它已经工作了一半,一些存储库被忽略了:
跳过配置文件“non-free-firmware/binary-amd64/Packages”的获取作为存储库“http://downloads.linux.hpe.com/SDR/repo/mcp/debian bookworm/12.80 InRelease”没有组件“non-free-firmware”(sources.list 中的组件拼写错误?) 跳过将配置文件“non-free-firmware/i18n/Translation-en_US”获取为存储库“http://downloads.linux.hpe.com/” SDR/repo/mcp/debian bookworm/12.80 InRelease”没有组件“non-free-firmware”(组件在sources.list中拼写错误?) 跳过配置文件“non-free-firmware/i18n/Translation-”的获取en'作为存储库'http://downloads.linux.hpe.com/SDR/repo/mcp/debian bookworm/12.80 InRelease'没有组件'non-free-firmware'(组件在sources.list中拼写错误? )
然后,我通过更改源文件以反映它建议的更改来对此进行更多实验:“InRelease”、“Release”等。但是,每当我更改文件以反映这些更改时,我仍然得到类似的结果,它会弹出类似的消息,但我显然缺少另一个词。
我已经弄清楚源代码在编辑后出了什么问题,这是一个拼写错误,同时它确实要求我删除“非自由固件”部分,并且要求我删除“InRelease”一词,但是,再次尝试后终于成功了,最终结果是:
我不知道为什么我花了两次尝试省略“非自由固件”并每次都得到不同的结果,但继续。
之后,使用马特在这里更新的答案,我必须进行一些更改,并且它有效。本质上将 keyrings 目录更改为 trust.gpg.d。
后来,更新了,它似乎对我有用。我不确定它是否实用,因为我对 Linux 还很陌生,但这对我有用,希望对其他人有帮助。