从 12.04.3 LTS 升级到 14.04.1 LTS 失败

Noe*_*rte 8 upgrade 12.04 hardware-enablement-stack 14.04

这可能已经被问过数百万次了,但是我正在努力将我的 Ubuntu 系统从 LTS 更新到 LTS,现在到 14.04.1 的升级已经结束。我的系统不断通知我升级到最新版本,声称

Your current Hardware Enablement Stack (HWE) is going out of support
on 2014-08-07.  After this date security updates for critical parts (kernel
and graphics stack) of your system will no longer be available.`
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时sudo do-release-upgrade,Ubuntu 说我没有可用的更新。此外,将prompt参数更改/etc/update-manager/release-upgradesprompt=normal而不是prompt=lts引发以下错误:

Checking for a new Ubuntu release
404  Not Found [IP: 91.189.91.14 80]
Err Upgrade tool
404  Not Found [IP: 91.189.91.14 80]
Fetched 0 B in 0s (0 B/s)
WARNING:root:file 'quantal.tar.gz.gpg' missing
Failed to fetch
Fetching the upgrade failed. There may be a network problem.
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎很奇怪,因为 Quantal 甚至不是当前版本,所以我不知道系统为什么会寻找它。

人们建议将-d标志附加到do-release-upgrade命令中,但文档说这将安装我不想要的 14.04 的开发版本。

任何帮助让我绕过这个障碍将不胜感激。

AWM*_*AWM 16

您必须重新安装更新管理器。首先,删除/清除它:

sudo apt-get purge update-manager-core update-notifier-common
Run Code Online (Sandbox Code Playgroud)

然后看看控制台输出。如果它告诉您某些目录无法删除,请手动删除它们。就我而言:

rm -rf /var/lib/update-manager
rm -rf /var/lib/update-notifier
Run Code Online (Sandbox Code Playgroud)

如果您使用的是 13.04 或更高版本,您还应该这样做以清除缓存的更新消息:

sudo rm /var/lib/ubuntu-release-upgrader/release-upgrade-available
Run Code Online (Sandbox Code Playgroud)

然后更新您的来源:

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

重新安装更新管理器:

sudo apt-get install update-manager-core update-notifier-common -y
Run Code Online (Sandbox Code Playgroud)

当您当前使用 LTS 并希望升级到最新的 LTS 时,请确保/etc/update-manager/release-upgrades您已设置:

Prompt=lts
Run Code Online (Sandbox Code Playgroud)

否则(将任何版本升级到更新版本)设置:

Prompt=normal
Run Code Online (Sandbox Code Playgroud)

现在 dist-upgrade 应该可以工作了:

sudo apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)