Referência Completa: DNF, APT e APK
Guia de referência para os gerenciadores de pacotes DNF (Fedora, RHEL, CentOS), APT (Debian, Ubuntu, Mint) e APK (Alpine Linux).
PROPÓSITO
Traduzir a mesma operação entre os três gerenciadores de pacote, sem precisar reaprender a sintaxe a cada distribuição.
Quando usar: Ao operar ambientes mistos — Fedora/RHEL, Debian/Ubuntu e Alpine — ou ao escrever scripts que precisam rodar em mais de uma família.
Pré-requisitos: Nenhum. É material de consulta.
0. Referência Rápida — Equivalências
| Operação | DNF | APT | APK |
|---|---|---|---|
| Instalar | dnf install | apt install | apk add |
| Remover | dnf remove | apt remove / apt purge | apk del |
| Atualizar metadados | dnf makecache | apt update | apk update |
| Atualizar tudo | dnf upgrade | apt upgrade | apk upgrade |
| Buscar | dnf search | apt search | apk search |
| Info do pacote | dnf info | apt show | apk info -a |
| Versões disponíveis | dnf --showduplicates list | apt-cache policy | apk list |
| Dependências diretas | dnf deplist | apt-cache depends | apk info -R |
| Dependentes reversos | dnf repoquery --whatrequires | apt-cache rdepends | apk info -r |
| Arquivos do pacote | dnf repoquery --list | dpkg -L | apk info -L |
| A qual pacote pertence | dnf provides | dpkg -S | apk info -W |
| Listar instalados | dnf list installed | apt list --installed | apk list --installed |
| Limpar cache | dnf clean all | apt clean | apk cache clean |
| Remover órfãos | dnf autoremove | apt autoremove | apk autoremove |
| Histórico | dnf history | /var/log/apt/history.log | /var/log/apk.log |
| Repositórios | dnf repolist | apt-cache policy | /etc/apk/repositories |
| Verificar integridade | rpm -V | dpkg --verify | apk verify |
| Corrigir pacotes | dnf distro-sync | apt install -f | apk fix |
1. Instalação de Pacotes
| Ação | DNF | APT | APK |
|---|---|---|---|
| Instalar pacote | sudo dnf install <pacote> | sudo apt install <pacote> | apk add <pacote> |
| Instalar sem confirmação | sudo dnf install -y <pacote> | sudo apt install -y <pacote> | apk add <pacote>(sem prompt por padrão) |
| Instalar múltiplos pacotes | sudo dnf install pkg1 pkg2 pkg3 | sudo apt install pkg1 pkg2 pkg3 | apk add pkg1 pkg2 pkg3 |
| Instalar arquivo local | sudo dnf install ./pacote.rpm | sudo apt install ./pacote.deb | apk add --allow-untrusted pacote.apk |
| Reinstalar pacote | sudo dnf reinstall <pacote> | sudo apt install --reinstall <pacote> | apk add --force-reinstall <pacote> |
| Instalar versão específica | sudo dnf install pacote-1.2.3 | sudo apt install pacote=1.2.3 | apk add pacote=1.2.3 |
| Instalar sem dependências | (não recomendado) | sudo dpkg -i | apk add --no-deps <pacote> |
| Instalar somente dependências | — | — | apk add --virtual <alias> dep1 dep2 |
2. Remoção de Pacotes
| Ação | DNF | APT | APK |
|---|---|---|---|
| Remover pacote | sudo dnf remove <pacote> | sudo apt remove <pacote> | apk del <pacote> |
| Remover + configs | (remove configs por padrão) | sudo apt purge <pacote> | apk del --purge <pacote> |
| Remover dependências órfãs | sudo dnf autoremove | sudo apt autoremove | apk autoremove |
| Remover + órfãs em uma etapa | sudo dnf remove <pacote> --setopt=clean_requirements_on_remove=True | sudo apt purge <pacote> && sudo apt autoremove | apk del --purge <pacote> && apk autoremove |
3. Atualização de Pacotes
| Ação | DNF | APT | APK |
|---|---|---|---|
| Atualizar lista de repositórios | sudo dnf check-update | sudo apt update | apk update |
| Atualizar todos os pacotes | sudo dnf upgrade | sudo apt upgrade | apk upgrade |
| Atualizar + remover obsoletos | sudo dnf distro-sync | sudo apt full-upgrade | apk upgrade --available |
| Atualizar pacote específico | sudo dnf upgrade <pacote> | sudo apt install --only-upgrade <pacote> | apk upgrade <pacote> |
| Atualizar forçando refresh | sudo dnf upgrade --refresh | sudo apt update && sudo apt upgrade | apk update && apk upgrade |
| Ver pacotes com atualização | sudo dnf check-update | apt list --upgradable | apk version -l '<' |
| Simular atualização (dry-run) | sudo dnf upgrade --assumeno | sudo apt upgrade --simulate | apk upgrade --simulate |
4. Busca de Pacotes
| Ação | DNF | APT | APK |
|---|---|---|---|
| Buscar por nome | dnf search <termo> | apt search <termo> | apk search <termo> |
| Busca exata no nome | dnf search <pacote> | apt-cache search ^<pacote>$ | apk search -e <pacote> |
| Buscar por arquivo/comando | dnf provides <arquivo> | apt-file search <arquivo> | apk search <arquivo> |
| Buscar por caminho | dnf provides /usr/bin/vim | apt-file search /usr/bin/vim | apk search /usr/bin/vim |
| Buscar por biblioteca | dnf provides libssl.so* | apt-file search libssl.so | apk search libssl |
| Buscar com descrição | dnf search --all <termo> | apt search <termo> | apk search -d <termo> |
5. Informações de Pacotes
Ver informações gerais
| Ação | DNF | APT | APK |
|---|---|---|---|
| Info do pacote (repositório) | dnf info <pacote> | apt show <pacote> | apk info <pacote> |
| Info do pacote instalado | dnf info installed <pacote> | apt show <pacote> | apk info -a <pacote> |
| Ver versão instalada | dnf list installed <pacote> | dpkg -l <pacote> | apk list --installed <pacote> |
| Ver versão disponível | dnf info <pacote> | apt-cache policy <pacote> | apk info <pacote> |
| Ver candidato à instalação | dnf info <pacote> | apt-cache policy <pacote> | apk search -e <pacote> |
| Ver changelog | dnf changelog <pacote> | apt changelog <pacote> | (não suportado nativamente) |
| Ver tamanho do pacote | dnf info <pacote> | apt show <pacote> | apk info -s <pacote> |
Ver versões disponíveis
# DNF — todas as versões disponíveis nos repositórios
dnf --showduplicates list <pacote>
# APT — versões disponíveis e candidato
apt-cache policy <pacote>
# APT — todas as versões (incluindo backports, etc.)
apt-cache madison <pacote>
# APK — versões disponíveis
apk search -e <pacote>
apk list <pacote>6. Listagem de Pacotes
| Ação | DNF | APT | APK |
|---|---|---|---|
| Listar todos instalados | dnf list installed | apt list --installed | apk list --installed |
| Listar disponíveis nos repos | dnf list available | apt list | apk list --available |
| Listar com atualização pendente | dnf list updates | apt list --upgradable | apk list --upgradable |
| Listar pacotes extras | dnf list extras | (sem equivalente direto) | (sem equivalente direto) |
| Listar pacotes obsoletos | dnf list obsoletes | (sem equivalente direto) | (sem equivalente direto) |
| Contar pacotes instalados | dnf list installed | wc -l | dpkg -l | grep '^ii' | wc -l | apk list --installed | wc -l |
7. Dependências
Ver dependências de um pacote
# DNF
dnf deplist <pacote>
dnf repoquery --requires <pacote>
dnf repoquery --requires --resolve <pacote> # resolve nomes dos pacotes
# APT
apt-cache depends <pacote>
apt-cache showdep <pacote>
# APK
apk info --depends <pacote>
apk info -R <pacote> # shorthand para --dependsVer dependências recursivas (árvore completa)
# DNF
dnf repoquery --requires --recursive <pacote>
# APT (requer apt-rdepends)
sudo apt install apt-rdepends
apt-rdepends <pacote>
# APK
apk info --depends <pacote> # diretas
# para árvore recursiva, use:
apk dot <pacote> | dot -Tpng > tree.png # requer graphvizVer o que depende de um pacote (dependentes reversos)
# DNF
dnf repoquery --whatrequires <pacote>
# APT
apt-cache rdepends <pacote>
apt-cache rdepends --installed <pacote> # só os instalados
# APK
apk info --rdepends <pacote>
apk info -r <pacote> # shorthand para --rdependsVer arquivos que um pacote instala
# DNF
dnf repoquery --list <pacote>
rpm -ql <pacote> # se já instalado
# APT
dpkg -L <pacote> # se instalado
apt-file list <pacote> # mesmo sem instalar (requer apt-file)
# APK
apk info --contents <pacote>
apk info -L <pacote> # shorthand para --contentsDescobrir a qual pacote um arquivo pertence
# DNF
dnf provides /caminho/do/arquivo
rpm -qf /caminho/do/arquivo # se o arquivo já está no sistema
# APT
dpkg -S /caminho/do/arquivo # se instalado
apt-file search /caminho/do/arquivo # no repositório
# APK
apk info --who-owns /caminho/do/arquivo
apk info -W /caminho/do/arquivo # shorthand para --who-owns8. Repositórios e Arquivos de Configuração
| Ação | DNF | APT | APK |
|---|---|---|---|
| Listar repositórios ativos | dnf repolist | apt-cache policy | cat /etc/apk/repositories |
| Listar todos (ativos + inativos) | dnf repolist all | cat /etc/apt/sources.list.d/*.list | cat /etc/apk/repositories |
| Adicionar repositório | sudo dnf config-manager --add-repo <url> | sudo add-apt-repository <ppa> | echo "<url>" >> /etc/apk/repositories |
| Habilitar repositório | sudo dnf config-manager --set-enabled <id> | (editar sources.list) | (descomentar linha em /etc/apk/repositories) |
| Desabilitar repositório | sudo dnf config-manager --set-disabled <id> | (editar sources.list) | (comentar linha em /etc/apk/repositories) |
| Atualizar metadados | sudo dnf makecache | sudo apt update | apk update |
DNF — Arquivos de Configuração
Arquivo principal: /etc/dnf/dnf.conf
Configuração global do DNF. Exemplo comentado:
[main]
gpgcheck=1 # verifica assinaturas GPG (recomendado: 1)
installonly_limit=3 # quantas versões do kernel manter
clean_requirements_on_remove=True # remove deps ao desinstalar
best=True # exige a melhor versão disponível
skip_if_unavailable=False # falha se algum repo estiver inacessível
fastestmirror=True # escolhe o mirror mais rápido (dnf-plugins-core)
max_parallel_downloads=5 # downloads simultâneos
keepcache=0 # 0 = limpa cache após instalar; 1 = mantémArquivos de repositório: /etc/yum.repos.d/*.repo
Cada repositório é um arquivo .repo nesse diretório. Exemplo completo:
[fedora]
name=Fedora $releasever - $basearch
baseurl=https://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
enabled=1 # 1 = ativo, 0 = desabilitado
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
metadata_expire=7d # validade do cache de metadados
priority=1 # menor número = maior prioridadeVariáveis disponíveis nos .repo:
| Variável | Valor |
|---|---|
| $releasever | versão do sistema (ex: 40) |
| $basearch | arquitetura (ex: x86_64) |
| $arch | arquitetura completa (ex: x86_64) |
Gerenciar repositórios via linha de comando
# Adicionar repo a partir de URL de arquivo .repo
sudo dnf config-manager --add-repo https://exemplo.com/repo.repo
# Habilitar/desabilitar por ID
sudo dnf config-manager --set-enabled fedora-updates
sudo dnf config-manager --set-disabled fedora-updates
# Instalar repo via pacote RPM (ex: EPEL no RHEL/CentOS)
sudo dnf install epel-release
# Adicionar chave GPG manualmente
sudo rpm --import https://exemplo.com/chave.gpg
# Listar repos com URLs
dnf repolist -v
# Ver de qual repo um pacote viria
dnf info <pacote>Repositórios comuns no Fedora/RHEL
# EPEL (Extra Packages for Enterprise Linux) — para RHEL/CentOS
sudo dnf install epel-release
# RPM Fusion (codecs, drivers proprietários) — para Fedora
sudo dnf install \
https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
# Remover um repo (deletar o arquivo .repo)
sudo rm /etc/yum.repos.d/repo-indesejado.repoAPT — Arquivos de Configuração
Arquivo principal: /etc/apt/apt.conf e /etc/apt/apt.conf.d/
Configuração global do APT. O diretório apt.conf.d/ contém fragmentos individuais:
# Ver configuração ativa consolidada
apt-config dump
# Arquivos comuns em /etc/apt/apt.conf.d/
ls /etc/apt/apt.conf.d/
# 01autoremove 10periodic 50unattended-upgradesExemplo de /etc/apt/apt.conf.d/99local:
// Manter pacotes baixados no cache
Binary::apt::APT::Keep-Downloaded-Packages "true";
// Não instalar pacotes recomendados automaticamente
APT::Install-Recommends "false";
// Não instalar pacotes sugeridos
APT::Install-Suggests "false";
// Timeout de download em segundos
Acquire::http::Timeout "30";
// Número de tentativas em caso de falha
Acquire::Retries "3";Arquivo de fontes: /etc/apt/sources.list
Formato clássico (uma linha por fonte):
# sintaxe: deb [opções] <uri> <suite> <componentes>
deb http://archive.ubuntu.com/ubuntu noble main restricted
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted
deb http://archive.ubuntu.com/ubuntu noble universe multiverse
deb http://security.ubuntu.com/ubuntu noble-security main restricted
# linha comentada = repositório desabilitado
# deb http://archive.ubuntu.com/ubuntu noble-backports main restrictedNovo formato DEB822: /etc/apt/sources.list.d/*.sources
Formato moderno (Ubuntu 24.04+, Debian 12+):
Types: deb
URIs: http://archive.ubuntu.com/ubuntu
Suites: noble noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpgArquivos individuais: /etc/apt/sources.list.d/
Cada repositório externo geralmente cria um arquivo próprio nesse diretório:
# Ver todos os arquivos de sources
ls /etc/apt/sources.list.d/
# Conteúdo típico de um repo externo (ex: Google Chrome)
# /etc/apt/sources.list.d/google-chrome.list
deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] \
https://dl.google.com/linux/chrome/deb/ stable mainGerenciar repositórios via linha de comando
# Adicionar PPA (Ubuntu)
sudo add-apt-repository ppa:usuario/nome-ppa
# Remover PPA
sudo add-apt-repository --remove ppa:usuario/nome-ppa
# Adicionar repo externo manualmente (método moderno com keyring)
# 1. Baixar e salvar a chave GPG
curl -fsSL https://exemplo.com/chave.gpg | \
sudo gpg --dearmor -o /usr/share/keyrings/nome-repo.gpg
# 2. Adicionar o repositório referenciando a chave
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/nome-repo.gpg] \
https://exemplo.com/repo stable main" | \
sudo tee /etc/apt/sources.list.d/nome-repo.list
# 3. Atualizar e instalar
sudo apt update
# Desabilitar um repositório sem remover (comentar no arquivo)
sudo sed -i 's/^deb /# deb /' /etc/apt/sources.list.d/nome-repo.list
# Remover repositório completamente
sudo rm /etc/apt/sources.list.d/nome-repo.list
sudo rm /usr/share/keyrings/nome-repo.gpg
# Listar chaves GPG instaladas (método moderno)
ls /usr/share/keyrings/
# Listar chaves (método antigo, legado)
sudo apt-key listComponentes do Ubuntu/Debian
| Componente | Descrição |
|---|---|
| main | Software livre suportado oficialmente |
| restricted | Drivers proprietários suportados |
| universe | Software livre mantido pela comunidade |
| multiverse | Software com restrições de licença |
| backports | Versões mais novas portadas para a release estável |
Pinning — controlar prioridade de repositórios
Arquivo /etc/apt/preferences.d/99prioridades:
# Preferir pacotes do repositório "stable" em vez de "backports"
Package: *
Pin: release a=stable
Pin-Priority: 900
# Instalar versão específica de um pacote de backports
Package: firefox
Pin: release a=noble-backports
Pin-Priority: 950# Ver prioridades atuais
apt-cache policy
apt-cache policy <pacote>APK — Arquivos de Configuração
Arquivo de repositórios: /etc/apk/repositories
Arquivo de texto simples, uma URL por linha. Linha com # = comentada/desabilitada:
# Repositórios oficiais do Alpine Linux v3.19
https://dl-cdn.alpinelinux.org/alpine/v3.19/main
https://dl-cdn.alpinelinux.org/alpine/v3.19/community
# Edge (rolling release) — desabilitado por padrão
#https://dl-cdn.alpinelinux.org/alpine/edge/main
#https://dl-cdn.alpinelinux.org/alpine/edge/community
#https://dl-cdn.alpinelinux.org/alpine/edge/testingGerenciar repositórios via linha de comando
# Adicionar repositório
echo "https://dl-cdn.alpinelinux.org/alpine/v3.19/community" \
>> /etc/apk/repositories
# Habilitar repositório (descomentar linha)
sed -i 's|^#https://dl-cdn.alpinelinux.org/alpine/edge/testing|\
https://dl-cdn.alpinelinux.org/alpine/edge/testing|' \
/etc/apk/repositories
# Desabilitar repositório (comentar linha)
sed -i 's|^https://dl-cdn.alpinelinux.org/alpine/edge/testing|\
#https://dl-cdn.alpinelinux.org/alpine/edge/testing|' \
/etc/apk/repositories
# Atualizar índices após alterar
apk updateBranches do Alpine
| Branch | Descrição |
|---|---|
| vX.Y/main | Pacotes essenciais, suporte LTS oficial |
| vX.Y/community | Pacotes mantidos pela comunidade, estáveis |
| edge/main | Versões mais recentes, sem suporte garantido |
| edge/community | Comunidade no rolling release |
| edge/testing | Pacotes experimentais, podem quebrar |
Arquivo de chaves GPG: /etc/apk/keys/
O Alpine verifica assinaturas dos índices com chaves .pub nesse diretório:
# Ver chaves instaladas
ls /etc/apk/keys/
# Adicionar chave de repositório externo
wget -P /etc/apk/keys/ https://exemplo.com/chave.pub
# Instalar sem verificação de chave (não recomendado, apenas em dev/docker)
apk add --allow-untrusted <pacote>
apk fetch --allow-untrusted <pacote>Arquivo de mundo: /etc/apk/world
Lista os pacotes instalados manualmente (sem incluir dependências). É o "estado desejado" do sistema:
# Ver conteúdo
cat /etc/apk/world
# Usar para reproduzir o ambiente em outra máquina
cat /etc/apk/world | xargs apk add
# Editar diretamente e sincronizar (avançado)
echo "vim" >> /etc/apk/world
apk upgrade --available # aplica o worldConfiguração global: /etc/apk/conf (não existe por padrão)
O APK não tem um apk.conf formal. Opções globais são passadas em flags ou via scripts de inicialização. Em Dockerfiles, o padrão é:
RUN apk update && apk add --no-cache <pacotes>
# --no-cache evita salvar o índice em disco, reduz tamanho da imagem9. Cache e Limpeza
| Ação | DNF | APT | APK |
|---|---|---|---|
| Limpar cache de pacotes | sudo dnf clean packages | sudo apt clean | apk cache clean |
| Limpar metadados | sudo dnf clean metadata | sudo apt clean | rm -rf /var/cache/apk/* |
| Limpar tudo | sudo dnf clean all | sudo apt clean && sudo apt autoclean | apk cache clean && rm -rf /var/cache/apk/* |
| Remover pacotes desnecessários | sudo dnf autoremove | sudo apt autoremove | apk autoremove |
| Ver tamanho do cache | du -sh /var/cache/dnf | du -sh /var/cache/apt | du -sh /var/cache/apk |
| Habilitar cache local | (ativado por padrão) | (ativado por padrão) | setup-apkcache /var/cache/apk |
10. Histórico de Transações
# DNF — ver histórico completo
dnf history
# DNF — detalhes de uma transação específica
dnf history info <id>
# DNF — desfazer última transação
sudo dnf history undo last
# DNF — desfazer transação por ID
sudo dnf history undo <id>
# DNF — refazer transação por ID
sudo dnf history redo <id>
# APT — histórico de instalações
cat /var/log/apt/history.log
# APT — log detalhado de operações
cat /var/log/dpkg.log
# APT — ver todos os pacotes instalados manualmente
apt-mark showmanual
# APK — histórico (log do sistema)
cat /var/log/apk.log
# APK — ver o mundo atual (pacotes instalados manualmente)
cat /etc/apk/worldNota APK: o arquivo
/etc/apk/worldé o equivalente ao "mundo" do APK — lista apenas os pacotes instalados manualmente (não as dependências). Muito útil para reproduzir ambientes.
11. Grupos de Pacotes e Virtuais
# DNF — listar grupos disponíveis
dnf group list
# DNF — info sobre um grupo
dnf group info "Development Tools"
# DNF — instalar grupo
sudo dnf group install "Development Tools"
# DNF — remover grupo
sudo dnf group remove "Development Tools"
# APT — equivalente com tasksel
sudo apt install tasksel
sudo tasksel
# APT — instalar meta-pacotes (equivalente a grupos)
sudo apt install build-essential
# APK — pacotes virtuais (agrupar dependências temporárias)
apk add --virtual .build-deps gcc musl-dev make
# ... compilar algo ...
apk del .build-deps # remove tudo de uma vez pelo aliasO recurso
--virtualdo APK é muito usado em Dockerfiles para instalar dependências de build e removê-las depois, mantendo a imagem pequena.
12. Operações de Baixo Nível
| Ação | RPM (DNF) | DPKG (APT) | APK direto |
|---|---|---|---|
| Instalar pacote local | sudo rpm -ivh pacote.rpm | sudo dpkg -i pacote.deb | apk add --allow-untrusted pacote.apk |
| Remover por nome | sudo rpm -e <pacote> | sudo dpkg -r <pacote> | apk del <pacote> |
| Listar arquivos do pacote | rpm -ql <pacote> | dpkg -L <pacote> | apk info -L <pacote> |
| Verificar integridade | rpm -V <pacote> | dpkg --verify <pacote> | apk verify <pacote> |
| Info do pacote instalado | rpm -qi <pacote> | dpkg -s <pacote> | apk info -a <pacote> |
| Listar todos instalados | rpm -qa | dpkg -l | apk list --installed |
| A qual pacote pertence arquivo | rpm -qf /arquivo | dpkg -S /arquivo | apk info -W /arquivo |
13. Resolução de Problemas
# DNF — verificar e corrigir dependências quebradas
sudo dnf check
sudo dnf distro-sync
# DNF — forçar atualização do cache
sudo dnf makecache --refresh
# DNF — reiniciar o PackageKit (quando travado)
sudo systemctl restart packagekit
# DNF — remover lock travado
sudo rm -f /var/cache/dnf/*.lock
sudo rm -f /var/lib/rpm/.rpm.lock
# APT — corrigir dependências quebradas
sudo apt install -f
sudo dpkg --configure -a
# APT — forçar reconfiguração de pacote
sudo dpkg-reconfigure <pacote>
# APT — verificar pacotes com problemas
sudo apt check
# APK — verificar e corrigir integridade do banco de dados
apk verify
apk fix
# APK — forçar reinstalação de todos os pacotes instalados
apk fix --reinstall
# APK — verificar consistência de dependências
apk audit
# APK — corrigir pacotes corrompidos
apk fix --depends <pacote>14. Recursos Específicos do APK
Pacotes virtuais (.virtual)
# Agrupar dependências com um alias descartável
apk add --virtual .deps-compilacao gcc g++ make musl-dev
# Compilar o projeto...
# Remover todas as dependências de uma vez
apk del .deps-compilacaoFixar versão de um pacote
# Fixar versão (pinning) — impede atualização
apk add <pacote>=1.2.3-r0
# Fixar em uma versão mínima
apk add '<pacote>>=1.2.0'Verificar arquivos modificados
# Ver arquivos de pacotes que foram alterados
apk audit --system
# Ver arquivos novos (não pertencem a nenhum pacote)
apk audit --backupSuporte a múltiplas arquiteturas e root alternativos
# Instalar pacotes em um diretório alternativo (ex: chroot)
apk add --root /mnt/alpine --initdb <pacote>
# Instalar para arquitetura diferente
apk add --arch x86 <pacote>_DNF: Fedora, RHEL 8+, CentOS Stream, AlmaLinux, Rocky LinuxAPT: Debian, Ubuntu, Linux Mint, Pop!OS, Kali LinuxAPK: Alpine Linux
