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

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

Ubuntu 13.10 64 服务器,在从 13.04 升级到 13.10 后,尝试从 13.10 升级到 14.04。我在下载 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.

我如何重新启动 do-release-upgrade 过程?

Apt-get 已完全更新、升级、dist-upgrade。

更新:

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

答案1

这个答案几乎偏离了主题,但却是我一直想知道的事情。

每次我升级 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喧嚣让我变得非常困惑、愤怒、老态龙钟。

所以我的子问题是:do-release-upgrade如果这些样式的命令根本不起作用,那么它们有什么好处呢?经过验证的有效方法有什么问题?(apt-get 与 aptitude 是另一场我正试图消化的斗争)

答案2

就我而言,同样的错误是由我的版本 (13.04) 的存储库不可用引起的(如错误输出所示)。这又是由于 13.04 不再受支持。(您可以通过失败轻松注意到这一点apt-get update。)似乎在这种情况下,您不得不do-release-upgrade添加一些提供新软件包的存储库(例如,只需在 /etc/apt/sources.list 中用新版本名称替换旧版本),然后apt-get update && apt-get dist-upgrade按照 Janne 的建议进行操作。(当然,这种方式也可以验证软件包签名。)

答案3

首先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

答案4

在终端中运行以下命令:

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

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

相关内容