apt-get 更新中的 GPG 错误

Meh*_*ian 2 update-manager apt 14.04

几分钟前,我运行了以下命令,它一如既往地工作正常:

sudo apt update
sudo apt upgrade
Run Code Online (Sandbox Code Playgroud)

然后大约 10 分钟后,我再次运行相同的命令:

sudo apt-get update

Ign http: //fi.archive.ubuntu.com trusty InRelease
Get:1 http://fi.archive.ubuntu.com trusty-updates InRelease [64.4 kB] 
Ign http: //dl.google.com stable InRelease     
Get:2 http://fi.archive.ubuntu.com trusty-backports InRelease [64.5 kB]        
Ign http: //fi.archive.ubuntu.com trusty-updates InRelease                      
E: GPG error: http: //fi.archive.ubuntu.com trusty-updates InRelease:
The following signatures were invalid: NODATA 2
Run Code Online (Sandbox Code Playgroud)

我尝试阅读 askubuntu 和 stackoverflow 中的每篇文章,但到目前为止一无所获。以下是唯一对我来说听起来合理但并没有解决问题的事情:

sudo mv lists lists.old
sudo mkdir -p lists/partial
sudo apt-get clean
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

任何建议表示赞赏。

更新:即使我的 Thunderbird 在加载后立即崩溃,所以我重新启动计算机并apt-get update再次运行,我得到:

sudo apt update
.
.
.
Fetched 32.2 MB in 10s (3,044kB/s)                                            
Reading package lists... Done
W: GPG error: http://ftp.sunet.se trusty/ Release: The following signatures were invalid: KEYEXPIRED 1445181253 KEYEXPIRED 1445181253 KEYEXPIRED 1445181253
Run Code Online (Sandbox Code Playgroud)

Meh*_*ian 7

重新启动和谷歌搜索后我做了什么来解决我的问题:

  1. reboot (重启电脑)

  2. sudo apt-get update (这会给你一个关于过期密钥的警告)

  3. apt-key list | grep expired(如另一篇文章中所建议的),我得到了:

    pub 2048R/E084DAB9 2010-10-19 [过期:2015-10-18]

  4. 复制密钥 ID 后的位/(在我的情况下为 E084DAB9)

  5. sudo apt-key adv --recv-keys --keyserver keys.gnupg.net E084DAB9 (记得把这个命令的key ID改成你从电脑上得到的)

  6. sudo apt update

  7. sudo apt upgrade