我如何以编程方式确定哪些 Ubuntu 版本仍然受支持?

我如何以编程方式确定哪些 Ubuntu 版本仍然受支持?

我正在编写一个脚本,需要一份当前支持的所有 Ubuntu 版本的列表。

如果你们当中有人知道一个可下载的文件,其中包含所有版本和日期,或者所有版本的简单列表现在支持的版本。那太好了。显然它们必须是 Canonical 保持其更新的位置,以便脚本在未来继续工作。

它应该可以在旧版本的 Ubuntu 上运行,比如任何受支持的版本(lucid+)等等。

答案1

您可以使用 launchpadlib 来执行此操作。例如,在 python 中:

#!/usr/bin/env python

from launchpadlib.launchpad import Launchpad

lp = Launchpad.login_anonymously('series-support-check')
for series in lp.projects['ubuntu'].series:
    print series.name, series.supported

有关启动板 API 的更多信息,请查看Web 服务 API 帮助或者API 参考

答案2

您可以使用 解析 的输出ubuntu-support-status。这将列出哪些软件不受支持,以及其他软件的支持时间。例如,即使桌面本身仅支持三年,LAMP 服务在 LTS 桌面上也支持 5 年。该命令将反映这一点。它还将向您显示来自 universe、multiverse 等的软件包根本不受支持。

以下是一个例子:

you@ubuntu:~$ ubuntu-support-status
Support status summary of 'ubuntu':

You have 1873 packages (89.5%) supported until October 2014 (18m)

You have 14 packages (0.7%) that can not/no-longer be downloaded
You have 206 packages (9.8%) that are unsupported

Run with --show-unsupported, --show-supported or --show-all to see more details

答案3

要将所有支持的名称放在列表中而不是打印出来:

from launchpadlib.launchpad import Launchpad

launchpad = Launchpad.login_anonymously('series-support-check')
names = [ s.name for s in launchpad.distributions["ubuntu"].series if s.active ]

答案4

不难看出发布日期的规律。如果你去维基百科,您可以看到,普通版本支持 1 年半,而 LTS(长期支持,每隔一年 4 月发布)支持 3 年。由于每 6 个月(4 月和 10 月)发布一次,因此很容易根据该信息构建脚本。

相关内容