我在更新源列表时遇到以下错误
$ 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)
如何解决这个问题?
要查找任何过期的存储库密钥及其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)
最后,这些答案中的任何一个都解决了我的问题。
我所做的是重新检查最新的可用资源。就我而言
###### 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)