如何解决 apt-key 已弃用?

如何解决 apt-key 已弃用?

我正在使用 Ubuntu 20.10,并且正在尝试获取最新的签名密钥,当我这样做时,我收到以下几行:

root@kubernetes-worker:/home/jonteyh# curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2537  100  2537    0     0  14016      0 --:--:-- --:--:-- --:--:-- 14094
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
OK

我在这里收到一条已弃用的警告消息apt-key。我该如何解决这个问题?

有什么方法可以删除trusted.gpg.d或编辑该文件吗?

答案1

它似乎apt-key已被 @Terrance 弃用。阅读此链接https://www.linuxuprising.com/2021/01/apt-key-is-deprecated-how-to-add.html

该链接指出 Debianapt-key将于 2022 年 4 月结束。目前apt-key仍然有效,如问题中的输出所示,其中指出OK这意味着密钥已被导入。

将来,建议signed-by对您正在添加的存储库进行此操作。

所有这些答案均来自重新措辞的链接。

首先,下载相关密钥:

对于 ASCII 类型的键,请按以下形式执行:

wget -O- <https://example.com/key/repo-key.gpg> | gpg --dearmor | sudo tee /usr/share/keyrings/<myrepository>-archive-keyring.gpg

或者

curl <https://example.com/key/repo-key.gpg> | gpg --dearmor > /usr/share/keyrings/<myrepository>-archive-keyring.gpg

对于非 ASCII 类型的键,请按以下形式执行:

wget -O- <https://example.com/key/repo-key.gpg> | sudo tee /usr/share/keyrings/<myrepository-archive-keyring.gpg>

或者你可以从密钥服务器获取密钥,如下所示:

sudo gpg --no-default-keyring --keyring /usr/share/keyrings/<myrepository>-archive-keyring.gpg --keyserver <hkp://keyserver.ubuntu.com:80> --recv-keys <fingerprint>

所有密钥都将存储在/usr/share/keyrings/文件夹中。您可以在将 repo 添加signed-by到 sources.list 文件时使用这些密钥:

deb [signed-by=/usr/share/keyrings/<myrepository>-archive-keyring.gpg] <https://repository.example.com/debian/ stable main>

arch=amd64或者您可以按照相同的方式添加:

deb [arch=amd64 signed-by=/usr/share/keyrings/<myrepository>-archive-keyring.gpg] <https://repository.example.com/debian/ stable main>

如果这有帮助,请感谢@Terrance

相关内容