GPG错误:http://archive.debian.org lenny/updates发布:以下签名无效:KEYEXPIRED 1356982504

Bha*_*bhi 3 linux debian

我在更新源列表时遇到以下错误

$ sudo apt-get update

Reading package lists... Done

W: GPG error: http://archive.debian.org lenny/updates Release: The following signatures were invalid: KEYEXPIRED 1356982504

W: You may want to run apt-get update to correct these problems
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

Rup*_*ups 7

要查找任何过期的存储库密钥及其ID,请使用apt-key,如下所示:

  apt-key list | grep expired
Run Code Online (Sandbox Code Playgroud)

您将得到类似于以下内容的结果:

  pub   4096R/BE1DB1F1 2011-03-29 [expired: 2014-03-28]
Run Code Online (Sandbox Code Playgroud)

在这种情况下,密钥ID是/即BE1DB1F1之后的位.

要更新密钥,请运行

  sudo apt-key adv --recv-keys --keyserver keys.gnupg.net BE1DB1F1
Run Code Online (Sandbox Code Playgroud)


Jua*_*sta 5

最后,这些答案中的任何一个都解决了我的问题。

我所做的是重新检查最新的可用资源。就我而言

###### Debian Main Repos
deb http://ftp.au.debian.org/debian/ wheezy main contrib non-free 
deb-src http://ftp.au.debian.org/debian/ wheezy main contrib non-free 

###### Debian Update Repos
deb http://security.debian.org/ wheezy/updates main contrib non-free 
deb http://ftp.au.debian.org/debian/ wheezy-proposed-updates main contrib non-free 
deb-src http://security.debian.org/ wheezy/updates main contrib non-free 
deb-src http://ftp.au.debian.org/debian/ wheezy-proposed-updates main contrib non-free 
Run Code Online (Sandbox Code Playgroud)

我使用这个网站生成它们。https://debgen.simplylinux.ch/ Debian 源代码生成器。

然后我更新回购中的密钥。

apt-get install debian-keyring debian-archive-keyring
apt-key update
Run Code Online (Sandbox Code Playgroud)

然后再次尝试更新

apt-get update
Run Code Online (Sandbox Code Playgroud)

这可能会解决问题。

Fetched 67.5 kB in 2min 0s (560 B/s)
Reading package lists... Done
Run Code Online (Sandbox Code Playgroud)

如果某些键仍然存在问题,请按照每个键的后续步骤操作。

您需要从另一台服务器手动添加密钥。在这种情况下,丢失的密钥是 55BE302B

所以你必须这样做:

gpg --keyserver pgpkeys.mit.edu --recv-key  55BE302B
gpg -a --export 55BE302B | sudo apt-key add - 
Run Code Online (Sandbox Code Playgroud)

它将导入密钥,然后您将它们添加到源中。

root@XXX:~# gpg --keyserver pgpkeys.mit.edu --recv-key  55BE302B
gpg: requesting key 55BE302B from hkp server pgpkeys.mit.edu
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 55BE302B: public key "Debian Archive Automatic Signing Key (5.0/lenny) <ftpmaster@debian.org>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
root@XXX:~# gpg -a --export 55BE302B | sudo apt-key add -     
OK
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助任何面临同样问题的人。


小智 5

我遇到了同样的问题,我只是更改了系统日期

date --set 2008-01-01
Run Code Online (Sandbox Code Playgroud)

然后尝试更新

apt-get update
Run Code Online (Sandbox Code Playgroud)

  • 你被否决了,因为这个解决方案乍一看确实很糟糕,但是当一个人需要维护一些旧的活尸时(比如 2020 年基于 Debian Jessie 的旧盒子:),那么时间旅行可能是最便宜的方式(如果你能做到的话)那)。否则,人们将花费大量时间寻找 ie 解决方案来说服旧的 apt 传递“KEYEXPIRED”(尚未找到)等,这可能并不值得您花时间。如果可以的话,关闭所有服务,将你的盒子设置为运行级别 1,时间旅行,apt 更新,恢复日期,祈祷并重新启动/重新启动/等等。 (4认同)