Por que a maioria das distros (exceto o Debian) recomenda/exige uma reinstalação completa ao atualizar para uma nova versão?

Por que a maioria das distros (exceto o Debian) recomenda/exige uma reinstalação completa ao atualizar para uma nova versão?

Tendo passado a maior parte da minha vida no Linux usando o Debian, estou dando uma olhada em outras distros e estou realmente surpreso com o quanto elas não fornecem uma atualização suave entre as versões. O Debian é infinitamente atualizável, e eu já atualizei algumas das principais versões estáveis.

Estou falando de distros bem suportadas como o Fedora (e derivados), até mesmo o Ubuntu e derivados. Até mesmo distros estáveis ​​orientadas para servidor, como CentOS.

É porque o sistema de gerenciamento de pacotes e os scripts de atualização de pacotes do Debian são muito mais avançados do que qualquer outra distribuição tem a oferecer?

Ou reinstalar do zero em uma atualização de versão principal é apenas uma ideia melhor no geral, independentemente da distribuição?

Responder1

É uma combinação de vários fatores.

A maioria das distros usa lançamentos principais como o momento para implementar mudanças significativas, às vezes significativas. Por exemplo, o Fedora 15 adicionou o systemd e o Ubuntu adicionou o upstart na versão 6.10. O Debian é uma distro muito conservadora em muitos aspectos. Mudanças grandes e significativas são desaprovadas.

É uma consequência disso, por exemplo, que os ciclos de lançamento do Debian sejam tão distantes, porque exigem que todos os pacotes importantes sejam modificados para atender aos padrões da nova versão.

A tecnologia de gerenciamento de pacotes do Debian não é superior à do Fedora ou do Ubuntu (obviamente, porque é igual à do Ubuntu), mas o Debian decidiu, culturalmente, que é importante ter um sistema de atualização tranquilo.

Responder2

Para ser mais específico, encontrei problemas em muitas distros ao fazer atualizações. Ubuntu Por exemplo, muda drasticamente sua base de pacotes instalados entre os lançamentos. Se você realizar o tradicional 'dist-upgrade', os pacotes instalados serão atualizados para seus novos lançamentos, mas o resultado final carece de novas alterações na programação. Se um pacote da instalação padrão for rebaixado para apenas 'suportado' ou pior, 'não suportado', você ainda manterá esse pacote. Se um novo pacote estiver na instalação padrão, você não o instalará. Mesmo que sua versão seja 'tecnicamente' a versão atualizada, ela não reflete a nova experiência de versão. O mesmo caso também é muito preciso, ao comparar o CentOS5 com o CentOS6, eles reorganizaram completamente os nomes de suas embalagens.

O Debian prioriza atualizações suaves, ao custo de mudanças tão drásticas. É por isso que o Debian é mais lento em recursos mais recentes; para sua comunidade, a compensação é aceitável. Para repetir a resposta anterior, não tem nada a ver com a tecnologia de gerenciamento de pacotes em si. Eu direi que as constantes reinstalações do Ubuntu estão me desgastando.

Responder3

O que você afirma não é verdade para toda a família deliberação contínuadistribuições.

Para um software de manutenção de sistema, é muito mais desafiador resolver problemas de compatibilidade entre pacotes ao atualizar apenas algumas partes do sistema ou manter a consistência da configuração durante as atualizações. Vários pacotes de software precisam ser adaptados para funcionarem bem uns com os outros.

É por isso que o mais fácil (ou seja,mais confiável com o mesmo esforço de tempo de desenvolvimento) para fornecer uma atualização do sistema é preparar periodicamente uma versão completa e exaustivamente testada da instalação completa. Soluções empresariais como a Red Hat assumem a posição de que o cliente deve receber um sistema confiável e ter problemas com atualizações interrompidas pelo maior tempo possível. (É claro que pequenas atualizações e correções de bugs devem estar disponíveis ou até mesmo retiradas automaticamente). Esta também é a filosofia geral por trás de distribuições de servidores gratuitas, como o CentOS.

Fornecer ao usuário final uma rota de atualização contínua entre versões é um grande desafio para os desenvolvedores de sistemas. Muitas distros optam por não sacrificar seu escasso tempo para isso. Muitos pacotes populares (como o QT, por exemplo) são difíceis de atualizar, muitas vezes necessitando de uma reinstalação completa. O que é ainda mais importante é que muitos projectos mostram uma diminuição no esforço de desenvolvimento ou são substituídos por novas tecnologias. No caso de pacotes de sistema, isso geralmente requer uma reformulação significativa do sistema. Os procedimentos de migração podem ser especialmente difíceis de implementar se tiverem que levar em conta o fato de que algumas pessoas desejarão atualizar da versão C para a D, mas outras mudarão da forma B ou da A ou de algum estado personalizado intermediário.

Então, como você já deve ter adivinhado, a abordagem mais desafiadora é o lançamento contínuo. Não conheço os detalhes da abordagem do Debian, mas pela sua descrição posso ver que eles estão em algum lugar no meio.

informação relacionada