修复ubuntu14.04中的更新错误

本文章翻译自 It’s F.O.S.S.,可以自由转载,但需标明原文出处以及译文出处。

谁没有在升级Ubuntu的时候遇到个错误呢?Update 错误在Ubuntu或者其他基于Ubuntu的发行版本中随处可见。虽然产生这些错误的原因众多,但解决方法很简单。在这篇文章中,我们将会看到经常遇到的各种类型的update错误和怎么修复它们。

Problem With MergeList

当你在终端运行升级的时候,你可能会遇到一个 problem with MergeList 像下面这样的提示:

E:Encountered a section with no Package: header,
E:Problem with MergeList /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages,
E:The package lists or status file could not be parsed or opened.'

修复这个错误只需要运行下面两个命令:

sudo rm -r /var/lib/apt/lists/*
sudo apt-get clean && sudo apt-get update

Failed to download repository information -1

实际上有两种 Failed to download repository information errors 错误,如果你遇到下面这一种:

W:Failed to fetch bzip2:/var/lib/apt/lists/partial/in.archive.ubuntu.com_ubuntu_dists_oneiric_restricted_binary-i386_Packages Hash Sum mismatch,
W:Failed to fetch bzip2:/var/lib/apt/lists/partial/in.archive.ubuntu.com_ubuntu_dists_oneiric_multiverse_binary-i386_Packages Hash Sum mismatch,
E:Some index files failed to download. They have been ignored, or old ones used instead

你可以用下面的命令修复它:

sudo rm -rf /var/lib/apt/lists/*
sudo apt-get update

Failed to download repository information -2

另一种 failed to download repository information errors 是由于过期的 PPA,通常当你运行Update Manager的时候会出现如下图的错误:

你可以运行 sudo apt-get update 看看是哪个PPA造成的,然后将它从源列表里面删除了就好了。你可以参照 failed to download repository information error这篇图示博文。

Failed to download package files error

一个常见的错误是 *failed to download package files error *,如下图:

这个很容易通过将源改为Main server解决。到 Software & Updates 里面将下载服务器改为 Main server。

Partial upgrade error

在终端进行升级的时候可能会抛出 partial upgrade error 这样一个错误:

Not all updates can be installed
Run a partial upgrade, to install as many updates as possible

运行下面这个命令即可修复:

sudo apt-get install -f

error while loading shared libraries

这其实是一个安装错误,如果你通过编译源代码的方式安装软件的话可能会看到这个错误:

error while loading shared libraries:
cannot open shared object file: No such file or directory

运行下面的命令即可解决:

sudo /sbin/ldconfig -v

关于它的详细信息,可以参考error while loading shared libraries

Could not get lock /var/cache/apt/archives/lock

这个错误发生主要是因为其他程序正在使用apt。假如你正在使用 Ubuntu Software Center 安装软件,此时在终端运行apt就会出现这种错误:

E: Could not get lock /var/cache/apt/archives/lock – open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/cache/apt/archives/

一般情况下,只要把其他使用apt的进程全部关掉就好了,如果还不行的话,使用下面这个命令:

sudo rm /var/lib/apt/lists/lock

还不能工作?那就是一下这个:

sudo killall apt-get

关于这个错误的更多详细信息看这里

GPG error: The following signatures couldn’t be verified

当你添加一个PPA源并在终端运行更新的时候,可能会遇到像下面的 GPG error: The following signatures couldn’t be verified 错误:

W: GPG error: http://repo.mate-desktop.org saucy InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 68980A0EA10B4DE8

我们只需要做的是在系统中添加这个公钥。可以从上面的提示信息中获取,上面的这个公钥就是 68980A0EA10B4DE8。可以这样添加:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 68980A0EA10B4DE8

添加过后,一切就会okay吧。

BADSIG error

其他与签名相关的Ubuntu更新错误是BADSIG error,它看起来是这样的:

W: A error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://extras.ubuntu.com precise Release: The following signatures were invalid: BADSIG 16126D3A3E5C1192 Ubuntu Extras Archive Automatic Signing Key
W: GPG error: http://ppa.launchpad.net precise Release:

The following signatures were invalid: BADSIG 4C1CBC1B69B0E2F4 Launchpad PPA for Jonathan French W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/precise/Release

修复这个错误,要运行下面几条命令:

sudo apt-get clean
cd /var/lib/apt
sudo mv lists oldlist
sudo mkdir -p lists/partial
sudo apt-get clean
sudo apt-get update

这里列举了一些你可能经常遇到的Ubuntu更新错误,我希望可以帮你摆脱这些错误的困扰。如果你还遇到了其他更新错误,在评论里面提一下,我将尽量做一个关于它的快速教程。

hah
Copyleft - All rights reversed. The internet is free and so is my content.