do-release-upgrade -d Ubuntu 13.10 – > 14.04失败

Ubuntu 13.10 64服务器,从13.04 – > 13.10做一次升级,然后尝试13.10 – > 14.04。 我有一个暂时的networking故障下载软件包列表为14.04一旦停止进程,试图重新启动过程结果在下面

root@server:~# do-release-upgrade -d Checking for a new Ubuntu release Get:1 Upgrade tool signature [198 B] Get:2 Upgrade tool [1,148 kB] Fetched 1,148 kB in 0s (0 B/s) authenticate 'trusty.tar.gz' against 'trusty.tar.gz.gpg' gpg exited 2 Debug information: gpg: fatal: can't open fd 6 for status output: Bad file descriptor secmem usage: 0/0 bytes in 0/0 blocks of pool 0/0 Authentication failed Authenticating the upgrade failed. There may be a problem with the network or with the server. 

我如何重新启动发行版升级过程?

Apt-get已经完全更新,升级,远程升级。

更新:

 root@server:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 13.10 Release: 13.10 Codename: saucy 

这个答案几乎是脱离主题,但我一直在想的东西。

每当我升级Debian或其一些衍生产品,如Ubuntu或Mint,我就这样做

 sed -i -e 's/olddistroname/newdistroname/g' /etc/apt/sources.list apt-get update && apt-get dist-upgrade reboot 

然后,我喜欢我刚刚发布的新发行版。

这永远适用于我。 所有这些do-release-upgrade hoopla使我很困惑,愤怒,老胡子。

所以我的问题是:如果他们甚至不工作,那么这些do-release-upgrade样式的命令有什么好处呢? 经过validation的工作方式有什么问题? (apt-get与aptitude是我只是试图消化的另一个战斗)

在我的情况下,我的版本(13.04)的存储库不可用导致相同的错误(如错误输出中所build议的)。 这反过来是由于13.04不再被支持。 (你很容易注意到这是由于apt-get update失败)。看起来在这种情况下,你不能do-release-upgrade但实际上必须添加一些提供新包的仓库(例如,只需用新版本replace旧版本在/etc/apt/sources.list中),然后按照Janne的build议apt-get update && apt-get dist-upgrade 。 (当然,这样也会validation包签名。)

首先做sudo dpkg --configure -a来清理所有破坏的东西,然后用sudo apt-get update来更新源代码,然后重试。 记住sudo do-release-upgrade -d应该谨慎使用,当然不应该在生产环境中使用。

编辑:

根据升级文档,您可以直接从Ubuntu 13.10(“Saucy Salamander”)升级到Ubuntu 14.04(“Trusty Tahr”),而不需要-d选项。 你应该可以通过执行sudo do-release-upgrade来解决这个问题

在terminal中运行这些命令:

 sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5 sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32 

这将从Ubuntu GPG密钥服务器下载缺less的GPG密钥(如原始错误消息中所述)。