Hangi Ubuntu Sürümlerinin hala desteklendiğini programlı olarak nasıl belirleyebilirim?


11

Bir senaryo yazıyordum ve şu anda desteklenen tüm Ubuntu sürümlerinin bir listesine ihtiyacım vardı.

Herhangi biriniz, tarihleri ​​içeren tüm sürümleri içeren indirilebilir bir dosyayı veya şu anda desteklenen tüm sürümlerin basit bir listesini biliyorsunuz . Bu harika olurdu. Açıkçası, Canonical'in onları güncel tuttuğu yerler olmalı, böylece senaryolar geleceğe çalışmaya devam edecek.

Ve Ubuntu'nun eski sürümlerinde çalışan bir şey olmalı, desteklenen herhangi bir sürümü (lucid +) vb.

Yanıtlar:


11

Bunu yapmak için launchpadlib'i kullanabilirsiniz. Örneğin, python'da:

#!/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

Launchpad API'sı hakkında daha fazla bilgi için web hizmetleri API yardımına veya API referansına bakın .


Ayrıca, bu bilgilere çevrimdışı olarak ihtiyaç duyduğunuz durumlar için dağıtım bilgisi paketi vardır. (Açıkça, dağıtım bilgisi komutları ubuntu-dev-tools paketindedir.
tumbleweed

7

Çıktısının ayrıştırılmasını kullanabilirsiniz ubuntu-support-status. Bu, hangi yazılımın desteklenmediğini ve diğerlerinin ne kadar süre desteklendiğini listeler. Örneğin, LAMP hizmetleri, masaüstünün kendisi yalnızca üç yıl desteklense bile, bir LTS masaüstünde 5 yıl boyunca desteklenir. Bu komut bunu yansıtacaktır. Ayrıca, evren, çoklu evren vb. Paketlerin hiç desteklenmediğini de gösterecektir.

İşte bir örnek:

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

Desteklenen tüm adları yazdırmak yerine bir listeye yerleştirmek için:

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 ]

Ben Python uzmanı değilim, ama Jeremy'nin cevabı üzerine önemli bir şey ekliyor mu?
Sezyum

filtre ve ardından bir harita? Bir liste kavraması daha iyi olurdu gibi görünüyor: names = [ s.name for s in series_all if s.supported ]:)
Jeremy Kerr

Eh, isimleri yazdırmak yerine bir çeşitte saklıyor, kendi başımı bir süre çizdiğimden bahsetmeye değer olduğunu düşündüm :) Evet, JKs sürümü biraz daha ince görünüyor :)
ara

-2

Deseni, çıkış tarihlerinde görmek zor değildir. Wikipedia'ya giderseniz normal sürümlerin 1 1/2 yıl desteklendiğini, LTS (her yılın Nisan ayında yayınlanan Uzun Süreli Destek) 3 yıl desteklendiğini görebilirsiniz. Her 6 ayda bir (Nisan ve Ekim aylarında) bir sürüm olduğu için bu bilgilerden bir senaryo oluşturmak kolaydır.


3
Hayır, değil. Ubuntu bir işletim sistemidir, ancak çeşitli süreler için farklı paketler desteklenir. Ubuntu Sunucusunda kullanılan paketler, Ubuntu Masaüstü'ne yükleseniz bile daha uzun süre desteklenir. Bu, örneğin Python'un masaüstünde 5 yıl desteklendiğini bilmeniz gerektiği anlamına gelir. Bu, wikipedia okunarak kolayca keşfedilemez. -1
Jo-Erlend Schinstad

Ayrıca, Ubuntu 13.04'ten başlayarak, LTS dışı tüm sürümlerin artık 18 yerine sadece 9 aylık desteği var. Mevcut duruma dayalı herhangi bir bilgi geleceğe dönük değildir
MestreLion
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.