为什么从LTS版本升级到下一个版本时会显示"未找到新的发布版本"?

我正在按照Ubuntu官网上的升级指南进行操作,但在启动升级工具时,我收到了以下回应:
Checking for a new ubuntu release
No new release found

我做错了什么吗?有没有其他办法?

奇怪的是,即使没有网络连接,例如在网络故障时,也有可能收到这个消息。出于某种原因,在这种情况下不会显示任何错误消息。 - jotik
我之前按照网页https://linuxconfig.org/disable-automatic-updates-on-ubuntu-18-04-bionic-beaver-linux上的“从图形用户界面禁用自动更新”指南来禁用自动检查更新。在进行了这个更改后,`do-release-upgrade`命令返回“未找到新版本”。为了使其正常工作,我不得不撤销这个更改。 - MrMas
1这个回答解决了你的问题吗?“最终版本”是“开发版本”吗? - nutty about natty
5个回答

根据Ubuntu工程基础团队经理Steve Langasek的说法:
默认情况下,LTS版本之间的升级直到第一个点发布版14.04.1才启用,计划在七月发布。建议大多数LTS用户在那之前等待再升级到14.04。
如果您选择在此之前升级,可以通过向升级工具传递-d选项来进行升级,运行do-release-upgrade -d或update-manager -d,从12.04升级到14.04。(-d代表开发版)
这个问题解释了等待提示的理由:
升级LTS到LTS(服务器)- 为什么要等待第一个点发布版?

@jorge-castro 这说得通!谢谢你。 - mcantsin
15为什么在.iso形式的新版本发布几天后,do-release-upgrade(不带-d参数)仍然显示“未找到新版本”?(我的/etc/update-manager/release-upgrades文件中设置为"Prompt=lts") - tudor -Reinstate Monica-
10从代码检查来看,似乎“正常”版本默认使用一个URL http://changelogs.ubuntu.com/meta-release 来列出14.04版本,而LTS版本则使用URL http://changelogs.ubuntu.com/meta-release-lts,但并未列出该版本。我认为他们尚未更新元信息。 - tudor -Reinstate Monica-
3那似乎是一个发布的疏忽,你能提交一个bug并抄送给我吗?我的电子邮件在我的个人资料中,请谢谢! - Jorge Castro
2@JorgeCastro 这确实是一个发布时的疏忽吗?有没有什么想法什么时候会修复?是否已经提交了一个错误报告,我可以在哪里关注它?(我搜索过了,但找不到。我还想从12.04 LTS切换到14.04.1 LTS,而且我只想通过更新管理器来完成。) - MarnixKlooster ReinstateMonica
1似乎changelogs.ubuntu.com/meta-release-lts现在已经修复了。 - DLosc
@DLosc 是的,现在我在更新管理器GUI中收到了升级到'14.04.1 LTS'的提醒。感谢<某人>! - MarnixKlooster ReinstateMonica
这也可以用于从非LTS版本升级,如果do-upgrade-release没有指示新候选项的话。只需使用-d将其从15.10升级到当前版本即可。 - Mast
回应@tudor的观点,16.04.1似乎也是如此。x.x.1版本发布已经5天了,但LTS版本中并没有列出它。我唯一找到的关于这个问题的信息是邮件列表,上面写着“即将发布”。 - Michael
对于我来说(14.04 LTS),do-release-upgrade 对我有效。 - SparkAndShine
1八年后,这个问题仍然存在。我正在运行Xubuntu 18.04,将更新首选项设置为etc/update-manager/release-upgrade文件中的lts,并且Xubuntu 20.04.1已经发布。然而,do-release-upgrade没有提供升级到20.04.1的选项,可能是因为https://changelogs.xubuntu.com/meta-release-lts未列出新版本。 - Teemu Leisti
1到了21.04版本,问题仍然存在。我无法在https://changelogs.ubuntu.com/meta-release上看到更新的元数据。 - JAMSHAID
现在是2023年,问题仍然存在。23.10版本已经发布了15天,但是http://changelogs.ubuntu.com/meta-release还没有更新。我应该如何向Canonical报告这个问题? - undefined

如果一个人无法访问图形用户界面(GUI),并且希望在终端上进行更新:
编辑文件/etc/update-manager/release-upgrades,将Prompt的值设置为normal或lts(根据您的情况选择适合的选项,注意只能从LTS版本升级到另一个LTS版本):
[DEFAULT] Prompt=normal
测试是否找到正确的版本,运行以下命令:
do-release-upgrade -c
如果显示了正确的版本,则进行升级:
sudo do-release-upgrade 如果您想要升级到开发状态(例如,在官方发布之前从18.10升级到19.04),可以使用-d标志:
sudo do-release-upgrade -d

这样我就可以将12.04升级到12.10。

可用的Prompt选项有:

  • never - 从不检查新版本。
  • normal - 检查是否有新版本可用。如果找到多个新版本,则升级程序将尝试升级到当前运行版本之后的版本。
  • lts - 检查是否有新的LTS版本可用。升级程序将尝试升级到当前运行版本之后的第一个LTS版本。请注意,如果当前运行的版本不是LTS版本,则不应使用此选项,因为在这种情况下,升级程序无法确定是否有更新的版本可用。

3我遇到了类似的问题。我只是将Prompt=normal更改为Prompt=lts,然后它对我来说就正常工作了。 - sir_k
1我发现了与Florin所描述的相反的问题。在2018年4月21日,Ubuntu 14.04 LTS一直显示“未找到新版本”,直到我将“Prompt=lts”更改为“Prompt=normal”。它选择了我想要升级到的16.04 LTS版本。我不知道为什么会这样。 - Winter Dragoness

sudo do-release-upgrade -d 

请注意末尾的-d;来自man页面:
  -d, --devel-release
      If using the latest supported release, upgrade to the development release

这在 /etc/update-manager/release-upgrades 中即使使用 Prompt=lts 也有效。

与问题中描述的一样。 - antivirtel

如果你遇到这个问题,并且不是18.04.1的问题,或者切换到lts或非lts更新也没有改变任何东西,请尝试以下步骤(非常难找到)。
打开终端并输入:export DEBUG_UPDATE_MANAGER=truedo-release-upgrade -c命令之前,查看出了什么问题。
如果你遇到和我一样的问题,你会看到:
result of meta-release download: '<urlopen error timed out>'
NO self.metarelease_information
No new release found.

您可能面临的问题是您为apt配置了一个不再相关的代理。由于历史原因(bug #446552),更新程序将在几个不合理的位置寻找代理设置。除了全局设置外,您还应检查bash环境变量、gconf桌面代理设置、/etc/apt/apt.conf以及在我的情况下/root/.synaptic/synaptic.conf

请注意,后者在图形界面中不再具有可用菜单,删除代理设置的唯一方法是编辑该文件。您也可以直接删除该文件,那样也可以起作用。


非常感谢。那就是我一直在寻找的东西。我本来正在考虑进行一个 Python 调试会话,但你救了我!我在 /root/.synaptic/synaptic.conf 中配置了一个代理,但我无法理解是谁或什么设置了它! - Overflow

2个选项:
1. 将ISO文件刻录到光盘中,然后放入驱动器中,系统会自动检测升级。 2. 进入Synaptics选项,然后选择偏好设置 > 发行版 > 始终优先选择最高版本。
问题解决了吗?

会试试这个,谢谢。 :) 我感觉很愚蠢没有意识到这一点。 - CullenDM
110.04发布不会立即升级,请查看我上面发布的链接。 - Jorge Castro