Como posso programaticamente determinar quais versões do Ubuntu ainda são suportadas?

11

Eu estava escrevendo um script e precisava de uma lista de todas as versões atualmente suportadas do Ubuntu.

Se algum de vocês souber de um arquivo para download que contenha todas as versões com datas ou uma lista simples de todas as versões suportadas atualmente . Isso seria bom. Obviamente, eles teriam que ser locais onde a Canonical os mantém atualizados para que os scripts continuem a trabalhar no futuro.

E deve ser algo que funciona em versões mais antigas do Ubuntu, por exemplo, qualquer versão suportada (lucid +), etc.

    
por Martin Owens -doctormo- 29.07.2011 / 05:57

4 respostas

11

Você pode usar o launchpadlib para fazer isso. Por exemplo, em 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

Para mais informações sobre a API da barra de lançamento, confira a ajuda da API de serviços da web ou a referência da API .

    
por Jeremy Kerr 29.07.2011 / 07:09
7

Você pode usar a análise da saída de ubuntu-support-status . Isso listará qual software não é suportado e por quanto tempo os outros são suportados. Por exemplo, os serviços LAMP são suportados por 5 anos em uma área de trabalho LTS, mesmo se a área de trabalho em si tiver suporte apenas por três anos. Esse comando refletirá isso. Ele também mostrará que pacotes do universo, multiverso, etc, não são suportados.

Veja um exemplo:

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
    
por Jo-Erlend Schinstad 29.07.2011 / 18:20
3

Para colocar todos os nomes suportados em uma lista, em vez de imprimi-los:

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 ]
    
por arand 03.02.2012 / 17:15
-2

Não é difícil ver o padrão nas datas de lançamento. Se você for a Wikipedia , poderá ver que as versões normais são suportadas por 1 1/2 anos, enquanto o LTS (Long Term Support, lançado em abril de todos os outros anos) é suportado por 3 anos. Como há um lançamento a cada 6 meses (em abril e outubro), é fácil criar um script a partir dessas informações.

    
por Thomas 29.07.2011 / 06:15