Visão geral do gerenciamento de pacotes no Azure Linux

Azure Linux usa DNF5 como seu gerenciador de pacotes e envia software como pacotes RPM. Este artigo aborda as especificidades de como Azure Linux é empacotado, o que há de novo no DNF5 e onde procurar quando caminhos ou ferramentas ainda carregam nomes da era YUM.

Note

Azure Linux 4.0 agora está em preview e está estritamente limitado às finalidades de avaliação e teste. Não é adequado para uso em produção.

DNF5

DNF5 é a última versão principal do DNF, o gerenciador de pacotes mantido pela comunidade de gerenciamento de software rpm upstream. Em comparação ao DNF4, o DNF5 fornece:

  • Resolução de dependência mais rápida.
  • Redução do uso de memória.
  • Uma arquitetura interna aprimorada.
  • Compatibilidade retroativa total com as configurações de repositório YUM existentes.

A interface de linha de comando é intencionalmente semelhante a yum e dnf 4, portanto scripts e pipelines de CI existentes geralmente funcionam sem alterações. Os comandos dnf e yum no Azure Linux são fornecidos pelo DNF5.

Pacotes RPM

O software em Azure Linux é entregue como pacotes RPM. Cada arquivo .rpm inclui:

  • Binários, bibliotecas, scripts e outros arquivos de conteúdo.
  • Arquivos de configuração marcados com %config para que eles sobrevivam a atualizações.
  • Metadados: nome, versão, versão, arquitetura, dependências, lista de arquivos, assinaturas e changelog.

O DNF resolve dependências, busca os arquivos necessários .rpm de repositórios configurados, verifica suas assinaturas e as entrega à rpm biblioteca para instalar ou atualizar. Você pode interagir com pacotes instalados diretamente usando rpm (por exemplo, rpm -qa, , rpm -qf <path>rpm -V <pkg>), mas para instalações e atualizações, use DNF para que a resolução de dependência permaneça correta.

YUM, DNF e DNF5

As distribuições baseadas em RPM passaram por três gerações de ferramentas de front-end:

YUM → DNF → DNF5

Cada geração manteve o formato do repositório no disco compatível, portanto, você ainda vê caminhos e nomes como /etc/yum.repos.d/ e yum.conf em sistemas linux Azure atuais. Eles são aliases em DNF5, não ferramentas separadas e você pode usar qualquer nome em scripts.

Para obter mais informações sobre o DNF5 e o ecossistema de RPM, consulte os seguintes recursos: