如何以程式設計方式確定仍支援哪些 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 1/2年,而LTS(Long Term Support,每隔一年4月發布)支援3年。由於每 6 個月(四月和十月)發布一次版本,因此可以輕鬆地根據該資訊建立腳本。

相關內容