您最初的猜测是正确的。在2016年2月4日之前支持15.04,因此do-release-upgrade
与您所拥有的版本相比,正在尝试将您升级到下一个受支持的版本。
这是来自的正常升级提示模式的说明/etc/update-manager/release-upgrades
:
检查是否有新版本可用。如果找到多个新发行版,发行版升级程序将尝试升级到立即替代当前正在运行的发行版的发行版。
因此,如果我使用的是14.04,则应该尝试将我带到14.10,但现在do-release-upgrade
尝试将OP(和我)带到15.04。
因此,通读/usr/lib/python3/dist-packages/DistUpgrade/MetaRelease.py
它似乎在确定要升级到哪个版本时会跳过不支持的版本(除非您使用的是developer标志):
# then see what we can upgrade to
upgradable_to = ""
for dist in dists:
if dist.date > current_dist.date:
# Only offer to upgrade to an unsupported release if running
# with useDevelopmentRelease, this way one can upgrade from an
# LTS release to the next supported non-LTS release e.g. from
# 14.04 to 15.04.
if not dist.supported and not self.useDevelopmentRelease:
continue
upgradable_to = dist
self._debug("new dist: %s" % upgradable_to)
break
我应该补充一点,我不建议您尝试通过解决这个问题do-release-upgrade -d
。当我尝试使用时prompt=normal
,我得到了404,因为14.10是EoL。我也认为在del妄中我一定已经尝试过do-release-upgrade -p
,试图将我直接带到16.04。到我意识到将自己带到Xenial的时候,一切都坏了,我不得不从工厂中恢复。最后,我决定等到16.04发布并重新安装。
do-release-upgrade
在14.04系统上运行时,它会说“未找到新版本”,这是正常现象,因为14.04系统只能升级到14.10,但是14.10现在已经停产。