[FUG-BR] Diferença entre as versões

Renato Botelho rbgarga em gmail.com
Sexta Fevereiro 18 13:49:20 BRST 2011


2011/2/18 Fábio Ferrão <ferrao04 at gmail.com>
>
> Pessoal,
>
> Estou com algumas dúvidas sobre as versões do freebsd. Gostaria da ajuda de
> vocês.
> Qual o timeline das versões RELEASE, PRERELEASE e RC, ou seja, qual a
> sequencia de lançamento das versões, quem vem depois de quem?
> Eu sei que existem dois ramos de versões, a CURRENT e a STABLE. E até então
> eu entendia que as versões RELEASE normalmente vêm depois de uma STABLE
> acrescentando algo, até que aa próxima STABLE chegue, por exemplo.
> Mas onde entram a PRERELEASE E A RC?

Esse assunto já apareceu aqui várias vezes, como você pode ver em [1].

Funciona mais ou menos assim, existe o branch principal de desenvolvimento,
e ele gera o FreeBSD 9.0-CURRENT, essa é uma versão de desenvolvimento,
só deve ser usada para testes.

Diretamente desse cara surge um branch para cada série (6, 7, 8). Esse é
o RELENG_8, que dá origem ao 8-STABLE. Quando apenas o 8.0 foi lançado,
esse cara fica sendo chamado de 8.0-STABLE, depois que sai o 8.1, ele vira
8.1-STABLE.

As alterações são sempre feitas no -current e depois de um tempo entram
no branch -STABLE, portanto, se você usar o RELENG_8, seu src sofrerá
várias alterações toda semana.

Desse branch RELENG_8 é que saem os branches pra cada versão, por
exemplo o RELENG_8_1, que irá gerar o 8.1-RELEASE. Nesse branch as
mudanças feitas no RELENG_8 não são adicionadas, portanto, ele vai
sofrer menos mudanças, apenas as de segurança, que adicionarão um
número no final dele, virando 8.0-RELEASE-p1, p2, p3, ...

Esse RELENG_8_1 é o mais conservador, e o recomendado para servers
em produção, a não ser que você precise de uma nova feature que só
esteja disponível no 8-STABLE e não possa esperar o 8.2.

Ditto, vamos responder sua pergunta. Quando o processo de geração
de release começa (8.2 por exemplo), o pessoal renomeia o RELENG_8
para 8.2-PRERELEASE. Ele continua sendo o branch -STABLE, mas o
nome muda, para que os usuários lembrem-se que um novo release
está sendo feito.

Já o RELENG_8_2, que é criado nesse momento, recebe o nome de
8.2-BETA1, BETA2, RC1, RC2 e finalmente -RELEASE. Quando o 8.2
é lançado e seu nome mudado pra -RELEASE, o RELENG_8 volta a
ser -STABLE. No fundo é só uma questão de nomes, mas isso não
muda nada.

> A outra dúvida é como garantir a atualização para uma versão STABLE, por
> exemplo?
> No supfile, normalmente é possível isolar numa versão, por exemplo, se eu
> colocar RELENG_8_1, imagino que atualizaria para a versão 8.1-STABLE, mas
> recebi a versão 8.1-PRERELEASE-p2. Essa versão é sequencia e é mais atual
> que a STABLE? Ou seja, posso deixar meu servidor com uma versão PRERELEASE?

O meu texto acima já expliquei que RELENG_8_1 é 8.1-RELEASE e não -STABLE.
Agora no seu caso, se ele baixou um 8.1-PRERELEASE-p2, existe alguma coisa
muito errada, pode baixar o src novamente de outro mirror.

Digo isso porque não aplicam-se patches de segurança em PRERELEASE, portanto
nunca existiu um PRERELEASE-p2, agora, se você olhar direito e me disser
que é 8.1-RELEASE-p2, aí sim, está perfeito. :)

[1] - http://www.fug.com.br/historico/html/freebsd/2005-03/msg00356.html

--
Renato Botelho


Mais detalhes sobre a lista de discussão freebsd