repo.skype.com 的签名无效:我该如何清除它?

repo.skype.com 的签名无效:我该如何清除它?

今天我执行了sudo apt upgrade,然后为了再检查一下,又执行了sudo apt update。后者以以下内容结尾:

Hit:5 http://dl.google.com/linux/chrome/deb stable InRelease                                       
Get:6 https://repo.skype.com/deb stable InRelease [4,502 B]                                        
Err:6 https://repo.skype.com/deb stable InRelease
  The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
Fetched 4,502 B in 5s (894 B/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://repo.skype.com/deb stable InRelease: The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
W: Failed to fetch https://repo.skype.com/deb/dists/stable/InRelease  The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
W: Some index files failed to download. They have been ignored, or old ones used instead.

为了解决这个问题,我打了电话sudo apt remove skypeforlinux,然后又打了一次sudo apt update。更新再次终止,并显示有关签名无效的消息。

我该如何解决这个无效签名问题?

$ uname -mrs
Linux 5.4.0-77-generic x86_64
$ lsb_release -d
Description:    Ubuntu 20.04.2 LTS

答案1

签名密钥的有效期已过期,微软几天后才生成新密钥。系统中的密钥替换不是自动的,您需要删除旧密钥并添加新密钥。

有两种方法可以解决这个问题:一是使用传统apt-key add命令,另一种是手动将新密钥添加到密钥环。

# 解决方案有效期至 Ubuntu 21.04(包括它)

您可以删除不再有效的密钥:

sudo apt-key del 1F3045A5DF7587C3

然后重新添加新的有效密钥:

curl https://repo.skype.com/data/SKYPE-GPG-KEY | sudo apt-key add -

运行时sudo apt update && sudo apt upgrade您应该看不到任何错误。

# 解决方案在 Ubuntu 21.04 及以后的版本中有效

当您尝试在 Ubuntu 中添加 APT 存储库密钥时apt-key,您可能会看到以下消息:

警告:apt-key 已弃用。请改为在 trust.gpg.d 中管理密钥环文件(请参阅 apt-key(8))。

apt-key 手册页提到:

apt-key 的使用已被弃用,但在维护脚本中使用 apt-key del 从主密钥环中删除现有密钥除外。

因此,如果您使用的 Ubuntu 版本直到 21.04,那么您可以使用apt-key delapt-key add,但对于以下版本,您必须手动在密钥环中添加密钥(在 Ubuntu 21.04 中,两种解决方案都可以完美运行:我对它们都进行了测试)。

您可以删除不再有效的密钥:

sudo apt-key del 1F3045A5DF7587C3

下载密钥并将其添加到密钥环:

curl https://repo.skype.com/data/SKYPE-GPG-KEY | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/skype-stable-archive-keyring.gpg

打开skype-stable.list文件...

sudo nano /etc/apt/sources.list.d/skype-stable.list

...并按如下方式修改第一行:

deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/skype-stable-archive-keyring.gpg] https://repo.skype.com/deb stable main

运行时sudo apt update && sudo apt upgrade您应该看不到任何错误。

相关内容