Sys Admin (ep. 06, parte 1) - Gestores de Pacotes (introdução)

Gestores de pacotes são ferramentas essenciais para gestão de software, é através deles que se pode instalar, actualizar e remover aplicações com precisão e eficiência dentro de um sistema Linux. Estas ferramentas não só lidam com o software principal, como também gerem dependências cruciais e mantêm registos em bases de dados sobre todas alterações feitas no sistema.

O Red Hat Package Manager (RPM, sendo este um dos maiores focus deste episódio) constitui a base da gestão de software no CentOS e outras distribuições derivadas do Red Hat. Pacotes RPM contêm o software compilado, metadados e scripts de instalação, o que torna uma implementação consistente em sistemas compatíveis. Ao usar o comando rpm diretamente, podemos instalar, verificar e consultar pacotes individuais, o que proporciona um controlo detatalhado sobre componentes de software. No entanto, esta ferramenta opera principalmente em pacotes únicos e não lida automaticamente com a resolução de dependências, o que pode criar desafios ao lidar com requisitos de software complexos.

Para resolver limitações da gestão de dependências do RPM, foram desenvolvidas ferramentas de nível superior, como o YUM (Yellowdog Updater Modified) a servir como front-end padrão durante muitos anos no CentOS e no Red Hat Enterprise Linux. O YUM introduziu a resolução automatizada de dependências, a gestão de repositórios e actualizações do sistema, simplificando drasticamente tarefas de gestão de pacotes. Embora o YUM tenha proporcionado uma melhoria significativa em relação a gestão manual do RPM, acabou enfrentando limitações de desempenho e arquitetura que levaram ao desenvolvimento de seu sucessor nas versões modernas dos sistemas.

O DNF (Dandified YUM) substituiu o YUM como front-end padrão para RPM no CentOS 8 e versões mais recentes, oferecendo melhor desempenho, melhor resolução de dependências e uma API mais robusta. Construído com os mesmos comandos fundamentais do YUM, o DNF oferece uma operação mais rápida através da resolução optimizada de dependências e utiliza a biblioteca libsolv para uma gestão de pacotes mais fiável. Considera-se uma evolução que representa melhoria contínua das ferramentas de gestão de pacotes, mantendo a compatibilidade com o extenso ecossistema de pacotes RPM.

A abordagem à gestão de pacotes ajuda a manter sistemas estáveis, seguros e bem configurados, ao mesmo tempo que possibilita a gerência eficiente do software que alimenta suas operações e serviços.

Comentários