表面哈哈哈,默念草泥马。

Ubuntu 更新时出现的问题&解决方案

W: GPG 错误:http://cn.archive.ubuntu.com precise-backports Release: 下列签名无效: BADSIG 40976EAF437D05B5 Ubuntu     Archive Automatic Signing Key <ftpmaster@ubuntu.com>
W: 无法下载 gzip:/var/lib/apt/lists/partial/cn.archive.ubuntu.com_ubuntu_dists_precise_multiverse_source_Sources  Hash 校验和不符
1.首先我直接运行下面命令不能解决问题:

代码:

gpg --keyserver subkeys.pgp.net --recv 40976EAF437D05B5
gpg --export --armor 40976EAF437D05B5 | sudo apt-key add -


第一句结果如下,提示未改变:

代码:

:~$ gpg --keyserver subkeys.pgp.net --recv 40976EAF437D05B5
gpg: 下载密钥‘437D05B5’,从 hkp 服务器 subkeys.pgp.net
gpg: 密钥 437D05B5:“Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>”未改变
gpg: 合计被处理的数量:1
gpg:              未改变:1



2.于是我想到先要把这个错误的密钥删掉,命令如下:

代码:

gpg --delete-key --armor 40976EAF437D05B5
sudo apt-key del 40976EAF437D05B5



3.然后再重新下载这个密钥,我用了另个方法:

代码:

gpg --keyserver-options http-proxy --keyserver keyserver.ubuntu.com --recv 40976EAF437D05B5
gpg --export --armor 40976EAF437D05B5 | sudo apt-key add -



4.最后我保险起见,清掉了apt缓存:

代码:

sudo apt-get clean
cd /var/lib/apt
sudo rm -rf lists.old
sudo mv lists lists.old
sudo mkdir -p lists/partial
sudo apt-get clean
sudo apt-get update


最后,成功消除了签名错误(BADSIG 40976EAF437D05B5)。