Descrição dos comandos do DNF
A descrição dos comandos listada abaixo é uma versão um pouco resumida dos documentos Read the Docs. Em todos os casos, nessa página, o comando dnfé um aliás para dnf5.
Comando advisory
Uso: dnf5 advisory [options] [<advisory-spec>...
advisory permite vários tipos de consultas para obter recomendações e advertências sobre pacotes. Argumentos opcionais podem ser passados em <advisory-spec> para filtrar recomendações com nomes específicos.
list | Lista recomendações disponíveis. |
info | Imprime detalhes sobre recomendações. |
summary | Imprime um resumo das recomendações. |
–all | Mostra recomendações contendo qualquer versão dos pacotes instalados. |
–available | Mostra recomendações contendo versões mais recentes dos pacotes instalados. (Default). |
–installed | Mostra recomendações contendo versões iguais e mais antigas dos pacotes instalados. |
–updates | Mostra recomendações de versões mais recentes dos pacotes instalados, se existir versão mais recente disponível. |
–contains-pkgs=NOME_DO_PACOTE,… | Mostra apenas recomendações contendo pacotes com nomes especificados. Esta é uma opção de lista. Somente pacotes instalados são correspondidos. Podem ser usados globs†. |
–security | Considera somente o conteúdo contido em avisos de segurança. |
–bugfix | Considera somente o conteúdo contido em avisos de correção de bugs. |
–enhancement | Considera somente o conteúdo contido em avisos de aprimoramento. |
–newpackage | Considera somente o conteúdo contido em avisos de newpackage. |
–advisory-severities=ADVISORY_SEVERITY,… | Considera somente o conteúdo contido em avisos com gravidade especificada. Esta é uma opção de lista. Os valores aceitos são: critical, important, moderate, low, none. |
–bzs=BUGZILLA_ID,… | Considera somente o conteúdo contido em avisos que corrigem um tíquete de ID do Bugzilla fornecido. Esta é uma opção de lista. Os valores esperados são IDs numéricos, por exemplo. 123123. |
–cves=CVE_ID,… | Considera apenas o conteúdo contido em avisos que corrigem um tíquete de ID CVE (Common Vulnerabilities and Exposures) fornecido. Esta é uma opção de lista. Os valores esperados são IDs de string no formato CVE, por exemplo, CVE-2201-0123. |
–with-bz | Mostra apenas avisos que fazem referência a um tíquete do Bugzilla. |
–with-cve | Mostra apenas avisos que fazem referência a um tíquete CVE. |
# mostra informações e avisos sobre o nome fornecido. $ dnf advisory FEDORA-2022-07aa56297a # mostra resumo dos avisos sobre pacotes kernel ou kernel-core com referência a tíquetea do Bugzilla. $ dnf advisory summary --contains-pkgs=kernel,kernel-core --with-bz # mostra lista de avisos de segurança ou avisos com gravidade importante $ dnf advisory list --security --advisory-severities=important
Comando autoremove
Uso: dnf autoremove
autoremove é usado para remover do sistema pacotes desnecessários. Esses pacotes foram provavelmente instalados como dependências para algum aplicativo mais tarde desinstalado, e não são mais exigidos por nenhum aplicativo.
Nota: Pacotes somente de instalação (por exemplo, kernels) nunca são removidos automaticamente por este comando, mesmo que tenham sido instalados como dependências.
A opção –offline armazena a transação para ser executada offline. Essas transações são executadas quando o sistema é inicializado em um ambiente mínimo, o que pode ser mais seguro do que a execução em um sistema inicializado normalmente, já que a transação tem menos probabilidade de interferir em processos sendo executados.
–offline | Armazena a transação para ser executada offline.Veja opção offline |
$ sudo dnf autoremove [sudo] senha para guilherme: Pacote Arch Versão Repositório Tamanho perl-Mozilla-CA noarch 20240730-1.fc41 anaconda 9.8 KiB Is this ok [y/N]: y Executando transações [1/2] Preparar transação 100% | 2.0 B/s | 1.0 B | 00m00s [2/2] Removendo perl-Mozilla-CA-0:20240730-1.fc41.noarch 100% | 13.0 B/s | 6.0 B | 00m00s # para postergar a execução para ambiente mínimo $ sudo dnf autoremove --offline ➡ Nada a fazer!
Comando check
Uso: dnf check [options]
Verifica o banco de dados packagedb local e responde com informações sobre problemas encontrados. Os testes a serem executados podem ser selecionados com as opções:
–dependencies | exibe dependências faltantes e conflitos. |
–duplicates | exibe pacotes duplicados. |
–obsoleted | exibe pacotes obsoletos. |
$ dnf check $ dnf check --dependencies $ dnf check --duplicates $ dnf check --obsoleted # nenhuma mesagem 'exibido porque o sistema está livre de problemas
Comando check-upgrade
Uso: dnf check-upgrade [options] [<package-spec>...]
Faz uma verificação não interativa para atualizações disponíveis do pacote específico. Se nenhum <package-spec> for especificado o comando verifica por atualizações de todos os pacotes do sistema. Termina exibe no terminal o código 0 se não existirem atualizações; e o código 100, junto com lista dos pacotes, se existirem.
–changelogs | Imprime os changelogs do pacote, |
–advisories=ADVISORY_NAME,… | Considera apenas o conteúdo contido em avisos com nome especificado. Esta é uma lista de opções. Os valores esperados são IDs de avisos, por exemplo, FEDORA-2201-123. |
–advisory-severities=ADVISORY_SEVERITY,… | Considera apenas o conteúdo contido em avisos com gravidade especificada. Esta é uma lista de opções. Os valores aceitos são:critical, important, moderate, low, none. |
–bzs=BUGZILLA_ID,… | Considera apenas o conteúdo contido em avisos que corrigem um tíquete com um ID do Bugzilla. Esta é uma lista de opções. Valores esperados são IDs numéricos, por exemplo, 123123. |
–cves=CVE_ID,… | Considera apenas o conteúdo contido em avisos que corrigem um tíquete CVE (Common Vulnerabilities and Exposures) com ID fornecido. Esta é uma lista de opções. Os valores esperados são IDs de string no formato CVE, por exemplo, CVE-2201-0123. |
–security | Considera apenas o conteúdo contido em avisos de segurança. |
–bugfix | Considera apenas o conteúdo contido em avisos de correção de bugs. |
–enhancement | Considera apenas o conteúdo contido em avisos de aprimoramento. |
–newpackage | Considera apenas o conteúdo contido em avisos de novo pacote. |
–minimal | Relata as versões mais baixas de pacotes que corrigem avisos do tipo bugfix, enhancement, security ou newpackage. Se uma opção que limite avisos seja usada, o relato inclui as versões mais antigas de pacotes que corrigem avisos correspondentes às propriedades de aviso selecionadas |
# imprime lista de pacotes que têm atualizações disponíveis $ dnf check-upgrade # imprime logs de alterações para todos os pacotes com atualizações pendentes $ dnf check-upgrade --changelogs
Comando clean
Uso: dnf clean [options] <cache_types>...
O comando dnf clean
é usado para apagar metadata temporariamente matido em repositórios, ou para marcar que um cache está expirado.
Os argumentos em <cache_types>
especificam que tipo de dados em cache devem ser limpos.
all | apaga todos os dados temporários de repositórios no sistema, |
packages | apaga todos os pacotes em cache, |
metadata | apaga metadados dos repositórios. Isso apaga os arquivos que o DNF5 usa para determinar a disponibilidade remota dos pacotes. Usando essa opção fará com que o DNF baixe todos os metadados em sua próxima execução, |
dbcache | apaga os arquivos de cache gerados pelo repositório, forçando o DNF a regenerar o cache em sua próxima execução, |
expire-cache | marca como expirados os metadados do repositório, forçando o DNF a verificar a disponibilidade do cache em sua próxima execução. |
# limpa todos os dados em cache no repositório $ dnf clean all # limpa todos os pacotes em cache e metadados no dbcache $ dnf clean packages dbcache
Comando distro-sync
Uso: dnf distro-sync [options] [<especificação-pacote>...]
O comando dnf distro-sync
serve para sincronizar os pacotes instalados com sua versão mais recente disponível em qualquer dos repositórios habilitados. Ele pode ser usado para atualizar, fazer downgrade ou manter pacotes. Argumentos opcionais podem especificar pacotes a serem sincronizados:
–allowerasing | permitir a remoção de pacotes instalados para resolver quaisquer problemas potenciais de dependência, |
–skip-broken | Resolver quaisquer problemas de dependência removendo pacotes que estejam causando problemas da transação, |
–skip-unavailable | Permitir pular pacotes que não são possíveis de sincronizar. Todos os pacotes restantes serão sincronizados, |
–downloadonly | Baixar o conjunto de pacotes resolvidos sem executar uma transação RPM, |
–offline | Armazenar a transação a ser executada offline. Veja o comando Offline. |
# sincroniza todo o sistema com a versão mais recente disponível dos pacotes. $ dnf distro-sync # Sincroniza o pacote vim com a versão mais recente disponível. $ dnf distro-sync vim
Comando downgrade
Uso: dnf downgrade [opções] <package-spec>...
downgrade
é usado para fazer o downgrade dos pacotes especificados na lista package-spec. É escolhida a versão mais alta, abaixo da versão sendo substituída, quando possível. Se a versão passada no argumento é inferior à versão instalada, o downgrade se dá para esta versaõ especificada.
–allowerasing | Permite remover pacotes instalados para solucionar problemas de dependência. |
–skip-broken | Resolve problemas de dependência removendo pacotes que estão causando problemas na transação. |
–skip-unavailable | Ignora pacotes que não podem passar por rebaixamento. Os demais pacotes são rebaixados. |
–allow-downgrade | Permite o rebaixamento de dependências na operação solicitada. |
–no-allow-downgrade | Desabilita o rebaixamento de dependências na operação solicitada. |
–downloadonly | Baixa os pacotes exigidos sem executar nenhuma transação RPM. |
–offline | Armazena a transação para ser executada offline. Veja o comando Offline. |
Nessa tabela usamos rebaixar para a expressão downgrade, que significa passar para uma versão inferior
# downgrade do pacote nano para a versão fornecida $ dnf downgrade nano-0:6.0-2.fc36 # Faça downgrade gcc e glibcpacotes, permitindo a remoção de pacotes instalados quando necessário $ dnf downgrade gcc glibc --allowerasing
Comando download
Uso: dnf download [options] <package-spec>...
download
é usado para baixar pacotes binários de origem definidos nos argumentos package-spec para o diretório de trabalho atual.
–arch | Limita a pacotes de arquiteturas dadas. |
–resolve | Resolve dependências de pacotes especificados e baixa os que faltam. |
–alldeps | Usado junto com –resolve, baixa todas as dependências, inclusive as já instaladas. |
–destdir=<path> | Define o diretório usado para baixar pacotes. O default é o diretório atual. |
–srpm | Baixa o rpm de origem e habilita todos os repositórios utilizados. |
–url | Imprime a lista de URLs onde os rpms podem ser baixados, sem fazer nenhum download. |
–urlprotocol | Usado junto com –url, filtra as URLs para os protocolos especificados: http, https, ftp, ou file. Pode ser usada várias vezes. |
–allmirrors | Usado com –url, imprime URLs separadas por espaços de todos os mirrors disponíveis para cada pacote. |
# Baixa o pacota kernel-headers usando o formato NEVRA completo. $ dnf download kernel-headers-0:5.17.0-300.fc36.i686 # Baixa todos os pacotes com o nome rpm ou rpm-devel. $ dnf download rpm rpm-devel # Baixe o pacote maven-compiler-plugin com todas as dependências. $ dnf download maven-compiler-plugin --resolve --alldeps # Baixa o pacote maven-compiler-plugin para o diretório /temp/pacotes. $ dnf download --destdir /temp/pacotes maven-compiler-plugin # Lista a URL http para baixar o pacote python. $ dnf download --url --urlprotocol http python # Baixa o python com a arquitetura x86_64. $ dnf download python --arch x86_64 # Baixe o rpm do dnf. $ dnf download dnf --srpm
Comando environment
Uso: dnf environment <subcommand> [options] [...]
environment
faz consultas sobre ambientes e grupos relacionados a eles. Argumentos opcionais em environment-spec servem como filtros para selecionar ambientes.
list | Lista ambientes disponíveis. |
info | Imprime detalhes sobre os ambientes. |
–available | Mostra ambientes disponíveis mas não instalados. |
–installed | Mostrar apenas ambientes instalados. |
# Mostrar lista de todos os ambientes. $ dnf environment list # Mostrar informações detalhadas sobre o KDEambiente. $ dnf environment info "KDE Plasma Workspaces"
Comando group
Uso: dnf group {list|info} [options] [...]
Uso: dnf group {install|remove|upgrade} [options] ...
group
permite consultas para obter informações sobre grupos, pacotes relacionados a eles e também é usado para instalação de grupos. Para consultar ambientes, use environment
.
Nota: dnf4 lista ambientes e grupos com o comando group
.
Argumentos opcionais podem ser passados em group-spec para filtrar grupos.
list | Lista todos os grupos correspondentes, instalados e disponíveis. Se nenhum parâmetro for especificado, lista os grupos conhecidos. As opções –installed e –available restringem a lista solicitada. Se –hidden for usado grupos ocultos também são listados. |
info | Imprime informações detalhadas sobre grupos. Aceita as mesmas opções que list. |
install | Marca grupos especificados e instala seus pacotes. Se a –with-optional for especificado, pacotes opcionais são inclídos. Por default todos os pacotes Mandatory e Default serão instalados se possível. Pacotes condicionais são instalados se atenderem aos requisitos. [Pode ser configurado por dnf-conf(5) , group_package_types]. Se o grupo estiver parcialmente instalado, o comando instala os pacotes ausentes. –no-packages faz com que nenhum pacote novo seja instalado. Apenas pacotes de grupos instalados são considerados para instalação. |
remove | Remove os pacotes do sistema e marca o grupo como removido. Ignora pacotes que pertencem a outro grupo instalado e não foram instalados pelo usuário. Se –no-packages for usada, nenhum pacote será removido. |
upgrade | Atualiza a definição do grupo especificado e os pacotes desse grupo. Caso novos pacotes sejam adicionados à definição do grupo após sua instalação, os novos pacotes serão instalados. Se alguns pacotes forem removidos da definição do grupo, eles serão desinstalados, exceto se foram instalados por um motivo diferente (por exemplo, instalados explicitamente por um usuário ou instalados implicitamente como uma dependência). |
–available | Mostra só grupos disponíveis, não instalados mas são conhecidos pelo DNF5. |
–installed | Mostra apenas grupos instalados. |
–hidden | Inclui grupos ocultos. |
–contains-pkgs | Mostra apenas grupos contendo pacotes com nomes especificados. A opção list suporta globs†. |
–with-optional | Inclui pacotes opcionais dos grupos, usado com install. |
–no-packages | Opera exclusivamente nos grupos sem manipular nenhum pacote. Usado com install e remove. |
–allowerasing | Permite a remoção de pacotes instalados para resolver problemas de dependência. Usado com os comandos install e upgrade. |
–skip-broken | Resolve problemas de dependência removendo os pacotes que causam problemas na transação. Usado com install. |
–skip-unavailable | Permite que se ignore pacotes que não podem ser instalados ou atualizados. Usado com install e upgrade. |
–allow-downgrade | Permite o downgrade de dependências para resolver a operação solicitada. Usado com install e upgrade. |
–no-allow-downgrade | Impede o downgrade de dependências ao resolver a operação solicitada. Usado com os install e upgrade. |
–downloadonly | Baixa os pacotes requeridos sem executar uma transação RPM. Usado com install e upgrade. |
–offline | Armazena a transação para ser executada offline. Veja o comando Offline. |
# Mostra lista de todos os grupos, incluindo os ocultos $ dnf group list --hidden # Mostrar informações detalhadas sobre todos os grupos relacionados a Xfce $ dnf group info *xfce* # Instalar o grupo mysql incluindo pacotes opcionais. $ dnf group install mysql --with-optional # Atualiza pacotes do grupo mysql em conformidade com a definição atual do grupo. $ dnf group upgrade mysql
Comando history
Uso: dnf history <subcommand> [options] []
history permite exibe um histórico de transações e oferece opções sobre esses transações, como desfazer ou refazer uma transação. Pressupõe-se que a opção de configuração history_record estava ajustadas quando as transações foram efetuadas.
list | Lista informações sobre transações registradas no sistema. |
info | Imprime detalhes sobre transações específicas. |
undo | Desfaz todas as ações da transação especificada. |
redo | Repete a transação especificada. Usa automaticamente –ignore-extras e –ignore-installed. Diferente dos demais comandos do history, ele sobreescreve os motivos das transações de pacotes já instalados. Útil para finalizar transações interrompidas. |
rollback | Desfaz todas as transações realizadas após a transação especificada. |
store | Armazena a transação em um diretório. |
–reverse | Inverte a ordem das transações listadas. |
–skip-unavailable | Permite ignorar e pular ações sobre pacotes não são possíveis de executar. |
–ignore-extras |
Ignaora pacotes extras incluídos na transação como erros. Mesmo assim eles são reportados como avisos. |
–ignore-installed | Não trata como erro a incompatibilidades entre pacotes de transações instalados e armazenados. Mesmo assim são reportados como avisos. O uso dessa opção pode resultar em uma transação vazia. Para ações de instalação, pule os pacotes já instalados. Para ações de atualização, ignore grupos ou ambientes que não estão instalados. Para remover ações, pule pacotes/grupos/ambientes não instalados. |
# Lista todas as transações, da mais recente para mais antigas. $ dnf history list # Mostra informações detalhadas sobre a quarta transação. $ dnf history info 4 # Mostra informações detalhadas sobre a última transação. $ dnf history info last # Mostra informações detalhadas sobre a penúltima transação. $ dnf history info last-1 # Lista transações com ID no intervalo de 4 a 8. $ dnf history list 4..8 # Desfaz a última transação. $ dnf history undo last # Desfaça a quarta transação ignorando pacotes baixados para a transação de reversão $ dnf history undo 4 --ignore-extras
Comando info
Uso: dnf info [options] [<package-spec>...]
Imprime informações detalhadas sobre os pacotes com base nos parâmetros fornecidos.
–showduplicates | Mostra todas as versões dos pacotes, e não apenas a mais recente. |
–installed | Lista só pacotes instalados. |
–available | Lista apenas pacotes disponíveis. |
–extras | Lista apenas extras (pacotes instalados no sistema mas não disponíveis em nenhum repositório conhecido). |
–obsoletes | Lista apenas os pacotes instalados que estão obsoletos em relação a pacotes de qualquer repositório conhecido. |
–recent | Lista só pacotes adicionados recentemente aos repositórios. |
–upgrades | Lista apenas as atualizações disponíveis para os pacotes instalados. |
–autoremove | Lista apenas os pacotes que serão removidos pelo comando autoremove. |
# mostra informações detalhadas sobre pacotes instalados e disponíveis. $ dnf info # Imprime informações sobre pacotes recentes cujos nomes começam por gnome. $ dnf info --recent gnome*
Comando install
Uso: dnf install [options] <package-spec>|@|@...
install é usado para instalar pacotes, grupos ou ambientes. Ao instalar pacotes definidos em package-specargumentos, DNF5garante que os pacotes e suas dependências estejam instalados no sistema. Se os pacotes especificados já estiverem instalados, o DNF5 não verifica suas dependências novamente e simplesmente verifica se os pacotes em si estão presentes.
Ao instalar grupos definidos nos argumentos group-spec, DNF5 garante que os grupos e seus pacotes sejam instalados no sistema. Instala apenas pacotes de grupo que correspondem ao tipo de pacote configurado.
–allowerasing | Permite a remoção de pacotes instalados para resolver problemas de dependência. |
–skip-broken | Resolve problemas de dependência removendo os pacotes que estão causando problemas da transação. |
–skip-unavailable | Permite pular pacotes que não estão disponíveis em repositórios. Todos os pacotes disponíveis são instalados. |
–allow-downgrade | Habilite o downgrade de dependências ao resolver a operação solicitada. |
–no-allow-downgrade | Desabilite o downgrade de dependências ao resolver a operação solicitada. |
–downloadonly | Baixe o conjunto de pacotes resolvido sem executar uma transação RPM. |
–offline | Armazene a transação a ser executada offline. Veja o comando Offline. |
–advisories=ADVISORY_NAME,… | Considere apenas o conteúdo contido em avisos com nome especificado. Esta é uma opção de lista. Os valores esperados são IDs de consultoria, por exemplo, FEDORA-2201-123. |
–advisory-severities=ADVISORY_SEVERITY,… | Considere apenas o conteúdo contido em avisos com gravidade especificada. Esta é uma opção de lista. Os valores aceitos são: critical, important, moderate, low, none. |
–bzs=BUGZILLA_ID,… | Considere apenas o conteúdo contido em avisos que corrigem um tíquete de um determinado ID do Bugzilla. Esta é uma opção de lista. Os valores esperados são IDs numéricos, por exemplo, 123123. |
–cves=CVE_ID,… | Considere apenas o conteúdo contido em avisos que corrigem um tíquete de determinado ID CVE (Common Vulnerabilities and Exposures). Esta é uma opção de lista. Os valores esperados são IDs de string no formato CVE, por exemplo, CVE-2201-0123. |
–security | Considere apenas o conteúdo contido em avisos de segurança. |
–bugfix | Considere apenas o conteúdo contido em avisos de correção de bugs. |
–enhancement | Considere apenas o conteúdo contido em avisos de aprimoramento. |
–newpackage | Considere apenas o conteúdo contido nos avisos do novo pacote. |
# Instala o pacote tito. $ dnf install tito # Instala o arquivo rpm no diretório fornecido. $ dnf install ~/Downloads/tito-0.6.21-1.fc36.noarch.rpm # Instala o pacote tito na versão especificada. # Se o pacote já estiver instalado, ele tentará fazer o downgrade ou o upgrade para a versão dada. $ dnf install tito-0.6.21-1.fc36 # Instala todos os pacotes que pertencem ao FEDORA-2022-07aa56297 advisory. $ dnf install --advisory=FEDORA-2022-07aa56297a \*
Comando leaves
O comando leaves serve para todos os pacotes “leafes” (folhas). Pacotes “leafes” são aqueles que estão instalados mas não são dependência de outro pacote instalado. Isso ocorre, por exemplo, quando dois ou mais pacotes marcam um ao outra como dependência, em um ciclo fechado, embora não sejam exigidos por nenhum outro pacote. Esse comando lista pacotes classificados por grupo, sendo o primeiro pacote no grupo marcado pelo caracter “–“.
leaves não possui opções, embora considere a configuração install_weak_deps. Se install_weak_deps = false
as dependências fracas são ignoradas durante o processamento do conjunto de pacotes leaves.
Por que isso é útil? A lista de pacotes leaves dá uma visão geral e enxuta do que está instalado no sistema. Todos os pacotes que aparecem na lista de leaves podem ser desinstalados sem quebrar nenhuma dependência do sistema.
# para listar os pacotes "leaves" $ sudo dnf leaves - bluedevil-0:6.2.3-1.fc41.x86_64 - bluez-cups-0:5.79-1.fc41.x86_64 - breeze-gtk-gtk2-0:6.2.3-1.fc41.noarch - breeze-gtk-gtk3-0:6.2.3-1.fc41.noarch - breeze-gtk-gtk4-0:6.2.3-1.fc41.noarch - brltty-0:6.6-19.fc41.x86_64 - cifs-utils-0:7.1-2.fc41.x86_64 - cifs-utils-info-0:7.1-2.fc41.x86_64 # [a lista está truncada] # para remover "bluedevil-0:6.2.3-1.fc41.x86_64" $ sudo dnf remove bluedevil-0:6.2.3-1.fc41.x86_64
Nota: Esse comando deve ser usado com cautela para que não sejam removidos pacotes usados pela sistema.
Comando list
Uso: dnf list [options] [<package-spec>...]
O comando list exibe uma lista de pacotes, que pode ser modificada pelos parâmetros fornecidos.
–showduplicates | Mostra todas as versões dos pacotes, não só a mais recente. |
–installed | Lista apenas os pacotes instalados. |
–available | Lista os pacotes disponíveis. |
–extras | Lista apenas os extras (aqueles instalados no sistema que não estão disponíveis em nenhum repositório conhecido). |
–obsoletes | Lista os pacotes instalados no sistema tornados obsoletos por pacotes em outro repositório conhecido. |
–recent | Lista só pacotes adicionados recentemente aos repositórios. |
–upgrades | Lista apenas as atualizações disponíveis para os pacotes instalados. |
–autoremove | Lista os pacotes que serão removidos pelo comando autoremove. |
# para listar pacotes instalados e disponíveis. $ dnf list # lista todos os pacotes disponíveis, incluindo todas as versões disponíveis. $ dnf list --available --showduplicates # lista pacotes instalados e disponíveis com nome iniciado por kde. $ dnf list kde*
Comando makecache
Uso: dnf makecache [global options]
makecache é usado para criar e baixar metadados para repositórios habilitados. Sempre que possível ele tenta evitar o download de novos dados, por exemplo, quando os metadados locais ainda não expiraram.
dnf makecache
atualiza o cache de metadados DNF local. Não há necessidade de executá-lo manualmente porque o DNF atualiza o cache de metadados automaticamente sempre que for executado. Esse comando é normalmente invocado de forma não interativa, por exemplo por um timer systemd, para manter o cache de metadados atualizado.
# esvazia o diretório /var/cache/libdnf/ $ sudo dnf clean all # atualiza /var/cache/libdnf/ com infirmações sobre repositórios $ sudo dnf makecache # esvazia os repositórios em /var/cache/libdnf/ $ sudo dnf clean metadata # esvazia caches de repositórios em /var/cache/libdnf/ $ sudo dnf clean all
Comando mark
Uso: dnf mark <subcommand> [global options] [] <package-spec>...
Quando pacotes são instalados com dnf
um “motivo” para a instalação fica armazendo nos metadados do banco de dados. mark altera o motivo para essa instalação. Esse motivo fica definido no argumento package-spec.
user | Marca o pacote como instalado pelo usuário. Útil se um pacote foi instalado como dependência mas o usuário quer marcá-lo para permanecer no sistema quando o comando remove for usado junto com a opção clean_requirements_on_remove=True. |
dependency | Marca o pacote como uma dependência. Útil se o usuário precisa de um pacote específico. O pacote permanece instalado no sistema, mas pode ser removido com remove, usado junto com a opção clean_requirements_on_remove=True. Essa operação deve ser usada no lugar de remove se não há certeza de que pacote não é requisito para outro pacote instalado no sistema por outro usuário. |
weak | Marca o pacote como uma dependência fraca. |
group | Marca o pacote como instalado pelo grupo definido no argumento group-id. Útil se um pacote foi instalado como uma dependência por um usuário, mas espera-se que ele seja protegido e tratado como pertencente a um grupo, pelo comando group remove. |
–skip-unavailable | Permite pular pacotes que não instalados no sistema. Pacotes instalados serão marcados. |
# marca o pacote fuse-devel como instalado pelo usuário $ dnf mark user fuse-devel # marca o pacote vim-enhanced como instalado pelo grupo xfce-desktop $ dnf mark group xfce-desktop vim-enhanced
Comando module
Uso: dnf module <subcommand> [options] [...]
Modularidade é uma forma alternativa de montar, organizar e entregar pacotes. Atualmente, existe apenas suporte básico para gerenciar os módulos, que não recebem mais suporte nas principais distribuições RPM. Mais detalhes em: Modularity e Read The Docs.
Comando offline
Uso: dnf offline <subcommand> [options]
offline é utilizado para gerenciar transações “offline”, que são aquelas executadas quando o sistema é inicializado num ambiente mínimo. Nesse ambiente, rodando um número menor de processos, é mais seguro executar transações pois é menos provável que a transação interfira com os processos em execução.
Transações offline podem ser iniciadas com o “flag” –offline em qualquer operação (install upgrade distro-sync, etc.), ou via dnf system-upgrade download. Depois que uma transação offline é iniciada podemos executar dnf offline reboot para reiniciar o computador e começar a transação. Os dados para transações offline são armazenados no diretório system state, localizado em /usr/lib/sysimage/libdnf/offline.
clean | Remove transações offline armazenada e exclui arquivos de pacotes em cache. |
log | Mostra uma lista de inicializações usadas para transações offline, ou mostra logs de transações offline tentadas. Os logs para cada reinicialização podem ser mostrados com a especificação de um dos números na primeira coluna com o argumento –number. Números negativos são usados para listar boots em ordem reversa, começando no último. Por exemplo, log –number=-1 mostra logs da última transação. |
reboot | Prepara o sistema para executar transações offline e reinicializa para executar a transação. Só pode ser executado após uma transação offline ser iniciada (por exemplo, por dnf system-upgrade download) . |
status | Mostra o status da transação offline atual. |
_execute | Executa a transação no ambiente offline. Aviso: apenas para uso interno, não devendo ser executado pelo usuário. |
–number=<boot number> | Mostra o log especificado pelo número. Para ver o número do log execute dnf offline log--number . Usado com o subcomando log. |
–poweroff | Desliga o sistema após a conclusão da transação, em vez de reiniciar. Se a transação falhar, o sistema será reiniciado em vez de desligar mesmo com esse sinalizador. Usado com o subcomando reboot. |
# prepara a instalação do pacote "hello" como uma transação offline. $ dnf install --offline hello # mostra o status da transação offline atual. $ dnf offline status # reinicia, executa a transação offline e depois desliga o sistema. $ dnf offline reboot --poweroff # Lista os "boots" em que uma transação offline foi tentada. $ dnf offline log # Visualiza o log da inicialização mais recente em que uma transação offline foi tentada. $ dnf offline log --number=-1
Comando provides
Uso: dnf provides [global options] <package-spec>...
provides encontra os pacotes que fornecem o <package-spec>. As especificações podem ser combinadas por nome do arquivo e specs.
# mostra quais pacotes fornecem o comando tito. $ dnf provides tito # mostra quais pacotes fornecem o arquivo /usr/bin/tito $ dnf provides /usr/bin/tito # retorna o pacote para rpm e informa se nonexistent_package não retorna resultados. $ dnf provides rpm nonexistent_package
Nota: Quando nenhum pacote é encontrado por provides, o dnf retorna o código 1 e a lista os recursos que não foram encontrados.
Comando reinstall
Uso: dnf reinstall [global options] <package-spec>...
reinstall é usado para reinstalar pacotes definidos em <package-spec>.
–allowerasing | Permite remover pacotes instalados para resolver problemas de dependência. |
–skip-broken | Resolva os problemas de dependência removendo pacotes que causam problemas na transação. |
–skip-unavailable | Ignora pacotes que não podem ser reinstalaos. Os demais serão reinstalados. |
–allow-downgrade | Permite o downgrade de dependências para resolver a operação solicitada. |
–no-allow-downgrade | Desativa o downgrade de dependências ao resolver a operação solicitada. |
–downloadonly | Baixa o conjunto de pacotes resolvidos sem executar uma transação RPM. |
–offline | Armazena a transação a ser realizada offline. |
# reinstala o pacote tito. $ dnf reinstall tito # reinstala o pacote tito usando arquivo rpm local. # Útil quando o pacote não está disponível em repositórios habilitados. $ dnf reinstall ~/Downloads/tito-0.6.21-1.fc36.noarch.rpm
Comando remove
Uso: dnf remove [options] <package-file-spec>|@|@...
remove é usado para remover pacotes, grupos ou ambientes do sistema. Para manter as dependências instaladas junto com o pacote a remover, defina clean_requirements_on_remove = False
.
–no-autoremove | Desativa a remoção de dependências não mais usadas. |
–offline | Armazena a transação a ser realizada offline. |
# remove o pacote tito. $ dnf remove tito
Comando replay
Uso: dnf replay [options]
replay permite reexecutar uma transação armazenada no diretório . O diretório de transações pode ser criado com a opção –store, disponível em todos os comandos de transação. A reexecução realizará as mesmas operações sobre pacotes da transação original, retornando erro caso existe diferenças com os pacotes instalados ou suas versões.
Para executar a repetição, o diretório de transações deve conter um arquivo no formato JSON (com o nome transaction.json) descrevendo as operações. O diretório também pode conter pacotes, grupos ou ambientes que serão usados na transação reproduzida.
–ignore-extras | Não considera como erros pacotes extras baixados pela transação. Eles ainda são relatados como avisos. |
–ignore-installed | Não considera erros as incompatibilidades entre pacotes de transação instalados e armazenados. Eles ainda serão relatados como avisos. Em ações de instalação, ignore pacotes já instalados. Em ações de atualização, ignore grupos ou ambientes ainda não instalados. Em ações de remoção, ignore pacotes/grupos/ambientes não instalados. Essa opção pode levar a transações vazias. |
–skip-broken | Resolve problemas de dependência removendo pacotes que causam problemas na transação. |
–skip-unavailable | Ignore pacotes armazenados na transação não disponíveis no sistema de destino, sem gerar mensagem de erro. |
# Reexecuta transação armazenada em ./transaction. $ dnf replay ./transaction # Reexecuta transação armazenada em ./transaction ignorando pacotes não disponíveis. $ dnf replay ./transaction --skip-unavailable
Comando repo
Uso: dnf repo <subcommand> [options] [...]
repo permite diversos tipos de consultas sobre repositórios configurados no sistema.
list | Lista repositórios disponíveis. |
info | Mostra informações detalhadas sobre os repositórios. |
–all | Mostra informações sobre todos os repositórios conhecidos. |
–enabled | Mostra informações apenas sobre repositórios habilitados. (Default). |
–disabled | Mostra informações apenas sobre repositórios desativados. |
# imprime informações detalhadas sobre todos os repositórios conhecidos. $ dnf repo info --all # imprime repositórios desativados relacionados à depuração. $ dnf repo list --disabled *-debuginfo # desative persistentemente o repositório usando o plugin config-manger. $ dnf config-manger setopt repo_id.enabled=0
Comando repoquery
Uso: dnf repoquery [options] [...]
repoquery é usado para consultar pacotes correspondentes a diversos critérios fornecido pelo usuário. Argumentos definidos na lista spec são usados como <package-file-spec>.
–advisories=ADVISORY_NAME,… | Limita a pacotes em advisory com nome especificado. Esta é uma opção de lista. Valores esperados são IDs advisory, por exemplo:FEDORA-2201-123. |
–advisory-severities=ADVISORY_SEVERITY,… | Limita a pacotes em advisory com gravidade definida. Esta é uma opção de lista. Valores aceitos são:critical, important, moderate, low, none. |
–arch=ARCH,… | Limita a pacotes das arquiteturas especificadas. Esta é uma opção de lista. |
–available | Consulta pacotes disponíveis. (Default). Se combinado com –installed consulta pacotes instalados e disponíveis. |
–bugfix | Limita a pacotes com avisos de correção de bugs. |
–bzs=BUGZILLA_ID,… | Limita a pacotes em avisos que corrigem um Bugzilla ID. Esta é uma opção de lista. Os valores esperados são IDs numéricos, por exemplo: 123123. |
–cves=CVE_ID,… | Limita a pacotes em avisos que corrijam um ID CVE (Vulnerabilidades e Exposições Comuns). Esta é uma opção de lista. Os valores esperados são IDs de string no formato CVE, por exemplo: CVE-2201-0123. |
–disable-modular-filtering | Inclui pacotes em módulos inativos. |
–duplicates | Limita a pacotes instalados e duplicados (ou seja, mais versões de pacotes com o mesmo nome e arquitetura). Pacotes Installonly são excluídos desse conjunto. |
–enhancement | Limita a pacotes com avisos de aprimoramento. |
–exactdeps | Limita a pacotes que requerem <capability> especificados por –whatrequires ou –whatdepends. Esta opção só pode ser empilhada com –whatrequires ou –whatdepends. |
–extras | Limita a pacotes instalados que não presentes em nenhum repositório disponível. |
–file=FILE,… | Limita a pacotes que possuem os arquivos em FILE. Esta é uma opção de lista. |
–installed | Consulta pacotes instalados. Se combinado com –available consulta pacotes instalados e disponíveis. |
–installonly | Limita a pacotes installonly instalados. |
–latest-limit=N | Limita a N pacotes mais recentes para uma arquitetura. Se N < 0 usa todos os pacotes. |
–leaves | Limita a pacotes leaves (instalados mas não exigidos por outros pacotes instalados). |
–newpackage | Limita a pacotes em avisos de newpackage. |
–providers-of=PACKAGE_ATTRIBUTE | Obtem o atributo de pacotes selecionados pelo atributom depois que a filtragem é concluída. Pacotes resultantes são limitados pelas opções –available –installed –arch. Tem suporte para: conflicts, depends, enhances, obsoletes, provides, recommends, requires, requires_pre, suggests, supplements. |
–recent | Limita a pacotes alterados recentemente. |
–recursive | Opção que pode ser usada com –whatrequires ou –providers-of=requires. Se usado com –whatrequires, estende a saída com pacotes que exigem qualquer coisa fornecida pelos pacotes de saída. Se usado com –providers-of=requires: estende a saída com pacotes que fornecem qualquer coisa exigida pelos pacotes de saída. Os pacotes adicionados são limitados pelas opções –available –installed –arch. |
–security | Limita a pacotes em avisos de segurança. |
–srpm | Utiliza pacotes RPMs de origem correspondentes para a saída após a filtragem. Habilita repositórios de origem. |
–unneeded | Limita a pacotes instalados mas desnecessários (pacotes que foram instalados como dependências, não mais necessários). Lista pacotes que serão removidos com autoremove. |
–upgrades | Limita a pacotes disponíveis que atualizam alguns pacotes já instalados. |
–userinstalled | Limita a pacotes que não marcados como dependências ou como dependências fracas. Isso limita os pacotes que foram instalados a pedido do usuário ou indiretamente, como parte de um perfil de módulo ou grupo de composições. Também retorna pacotes com motivo desconhecido. O resultado pode ser influenciado pela opção “exclude” no arquivo de configuração. Para obter a razão exata da instalação, use a opção –queryformat ‘%{name} %{reason}\n‘. |
–whatconflicts=CAPABILITY,… | Limita a pacotes em conflito com qualquer um dos listados em <capabilities>. Esta é uma opção de lista. |
–whatdepends=CAPABILITY,… | Limita a pacotes que requerem, melhoram, recomendam, sugerem ou complementam qualquer um em <capabilities>. Esta é uma opção de lista. |
–whatenhances=CAPABILITY,… | Limita a pacotes que melhoram qualquer um dos recursos em <capabilities>. Use –whatdepends para listar todos os pacotes dependentes. Esta é uma opção de lista. |
–whatobsoletes=CAPABILITY,… | Limita a pacotes que tornem obsoletos qualquer um dos <capabilities>. Esta é uma opção de lista. |
–whatprovides=CAPABILITY,… | Limita a pacotes que fornecem qualquer uma das <capabilities>. Esta é uma opção de lista. |
–whatrecommends=CAPABILITY,… | Limite a pacotes que recomendam qualquer um dos <capabilities>. Use –whatdepends para listar todos os pacotes dependentes. Esta é uma opção de lista. |
–whatrequires=CAPABILITY,… | Limite a pacotes que requeiram qualquer uma das <capabilities>. Use –whatdepends para listar todos os pacotes dependentes. Esta é uma opção de lista. |
–whatsuggests=CAPABILITY,… | Limita a pacotes que sugiram qualquer uma das <capabilities><>. Use –whatdepends para listar todos os pacotes dependentes. Esta é uma opção de lista. |
–whatsupplements=CAPABILITY,… | Limita a pacotes que complementem qualquer um dos <capabilities>. Use –whatdepends para listar todos os pacotes dependentes. Esta é uma opção de lista. |
Opções de formatação podem ser usadas para definir quais informações são exibidas sobre cada pacote. Leia mais sobre os comandos de formatação em Read the Docs: Repoquery.
# listar pacotes que fornecem o arquivo /etc/koji.conf. $ dnf repoquery /etc/koji.conf # listar pacotes que contêm o "http" no nome. $ dnf repoquery *http* # listar pacotes instalados incluídos em qualquer advisory de segurança. $ dnf repoquery --installed --security
Comando search
Uso: dnf search [options] <pattern>...
search é usado para pesquisar pacotes em correspondência com palavras-chave fornecida pelo usuário, em vários metadados. Por padrão, o comando procura todas as chaves solicitadas (usando AND) nos campos Name ou Summary dos metadados do pacote RPM. A correspondência é insensível ao caso (maíuscula/minúsculas) e globs† são suportados.
–all | A busca por padrões de pesquisa inclui os campos Description e URL, nos metadados. Com essa opção, a pesquisa lista os pacotes que correspondem a pelo menos uma das chaves (usando OR). |
–showduplicates | Mostra todas as versões de pacotes, não apenas as mais recentes. |
# procura a palavra-chave kernel nos campos Name ou Summary dos metadados do pacote. $ dnf search kernel # procura pacotes com palavras-chaves rpm e dbus (ambos) nos campos Name ou Summary. $ dnf search rpm dbus # procura pacotes com qualquer uma das palavras-chave nos campos Name, Summary, Description ou URL. $ dnf search --all fedora gnome kde
Comando swap
Uso: dnf swap [options]
swap é usado para remover um pacote e instalar outro em uma única transação.
–allowerasing | Permite que pacotes instalados sejam removidos para resolver problemas de dependência. |
–offline | Armazena a transação para execução offline. |
# Remove mlocate e instala plocate. $ dnf swap mlocate plocate
Comando system-upgrade
Uso: dnf system-upgrade <subcommand> [options]
system-upgrade é usado para atualizar o sistema para uma nova versão. O comando baixa perimeiro os pacotes necessários na sessão ativa. Depois ele emite o subcomando reboot para reiniciar o sistema em ambiente “offline” mínimo para aplicar as atualizações. Essa é uma maneira recomendada para atualizar um sistema para uma nova versão principal. O sistema deve estar atualizado (na versão anterior), o que pode ser obtido com $ dnf --refresh upgrade
. system-upgrade compartilha vários subcomandos com offline.
clean | Idêntico ao subcomando de Offline |
download | Baixa todos os pacotes necessários para a atualização e verifica se eles podem ser instalados. |
log | Idêntico ao subcomando de Offline |
reboot | Idêntico ao subcomando de Offline |
.
–releasever= | Obrigatório, define a versão para atualização. Marca a versão $releasever em todos os repositórios habilitados. |
–no-downgrade | Funciona como dnf update , não instaland pacotes da nova versão se forem mais antigos do que os já instalados. É o oposto do comportamento default, que sempre instala pacotes da nova versão, mesmo que mais antigos. Funciona como dnf update$ dnf distro-sync . |
–number= | Idêntico ao subcomando de Offline |
–poweroff | Idêntico ao subcomando de Offline |
# atualizar sistema e carregar repositórios $ dnf --refresh upgrade # atualiza sistema e baixa pacotes da versão 40 $ dnf system-upgrade download --releasever 40 # atualiza e reinicializa sistema $ dnf system-upgrade reboot # mostrar logs da última tentativa de atualização $ dnf system-upgrade log --number=-1
Comando upgrade
Uso: dnf upgrade [options] [<package-spec>|@|@...]
upgrade é usado para atualizar pacotes, grupos ou ambientes para a versão mais recente disponível.
Grupos e ambientes não possuem versões, portanto a atualização basicamente significa uma sincronização com a definição disponível atualmente. A atualização do grupo atualiza todos os pacotes desse grupo, e a atualização do ambiente atualiza todos os grupos contidos nesse ambiente.
–minimal | Atualiza pacotes para as versões mais baixas disponíveis que corrigem advsories do tipo correção de bugs, aprimoramento, segurança ou newpackage. Se uma opção de limitação de avisos for usada, atualiza os pacotes para as versões mais baixas que corrige avisos correspondentes às propriedades selecionadas |
–allowerasing | Permite remover pacotes instalados para resolver problemas de dependência. |
–skip-unavailable | Permite ignorar pacotes não possíveis de atualizar. Os demais pacotes serão atualizados. |
–allow-downgrade | Habilita o downgrade de dependências para resolver a operação solicitada. |
–no-allow-downgrade | Desativa o downgrade de dependências para resolver a operação solicitada. |
–destdir= | Define o diretório usado para baixar pacotes. O default é o diretório atual. Automaticamente define a opção downloadonly. |
–downloadonly | Apenas baixa pacotes para transação. |
–offline | Armazena a transação para execução offline. Veja o comando Offline. |
–advisories=ADVISORY_NAME,… | Considera apenas o conteúdo contido em avisos com nome especificado. Esta é uma opção de lista. Os valores esperados são IDs consultivos, por exemplo. FEDORA-2201-123. |
–advisory-severities=ADVISORY_SEVERITY,… | Considera apenas o conteúdo contido em avisos com gravidade especificada. Esta é uma opção de lista. Os valores aceitos são: critical, important, moderate, low, none. |
–bzs=BUGZILLA_ID,… | Considera só o conteúdo em avisos que corrigem um ticket de determinado ID do Bugzilla. Esta é uma opção de lista. Os valores esperados são IDs numéricos, por exemplo. 123123. |
–cves=CVE_ID,… | Considera só conteúdo em avisos que corrigem um ticket de determinado ID CVE (Vulnerabilidades e Exposições Comuns). Esta é uma opção de lista. Os valores esperados são IDs de string no formato CVE, por exemplo: CVE-2201-0123. |
–security | Considera só o conteúdo nos avisos de segurança. |
–bugfix | Considera só o conteúdo nos avisos de correção de bugs. |
–enhancement | Considera só o conteúdo nos avisos de aprimoramento. |
–newpackage | Considera só o conteúdo nos avisos do newpackage. |
# atualiza todos os pacotes instalados para a versão mais recente disponível. $ dnf upgrade # atualizar o pacote tito. $ dnf upgrade tito
Comando versionlock
Uso: dnf versionlock <subcommand> <package-spec>...
versionlock recebe uma lista de nomes e versões para pacotes e exclui todas as demais versões desses pacotes. Dessa forma é possível proteger pacotes, impedindo que sejam atualizados para versões mais recentes. Alternativamente, o comando pode recer uma versão de pacote específica a ser excluída das atualizações, por exemplo, para ignorar uma versão específica de um pacote que tenha problemas conhecidos.
O plugin percorre as entradas do arquivo versionlock, excluindo pacotes cujo nome não corresponde às condições listadas. Isso é idêntico a usar dnf –exclude
com o próprio nome do pacote (pois não se pode excluir pacotes instalados). No entanto as versões installed ou versionlocked ainda serão vistas como disponíveis pelo dnd, que ainda poderá reinstalar essas versões.
Nota: o comando versionlock não aplica nenhuma exclusão em operações não transacionais, como repoquery, list ou info.
add | Adicione um versionlock em todos os pacotes disponíveis correspondentes à especificação. Isso significa que apenas pacotes e versões representados em package-spec ficam disponíveis para operações de transação. |
exclude | Adiciona uma exclusão (dentro do versionlock) para os pacotes correspondentes à especificação. Pacotes representados por package-spec serão excluídos das operações de transação. |
clear | Remove todas as entradas de versionlock. |
delete | Remove todas as entradas de versionlock correspondentes. |
list | Lista as entradas do versionlock. |
# trava a versão do pacote acpi, se estiver instalado, para a versão atual. # se acpi não estiver instalado, trava a versão do acpipara qualquer uma das versões disponíveis atualmente. $ dnf versionlock add acpi # mostra a configuração atual do versionlock. $ dnf versionlock list # remove todas as regras para o pacote acpi. $ dnf versionlock delete acpi # Exclui a versão iftop-1.2.3-7.fc38. $ dnf versionlock exclude iftop-1.2.3-7.fc38
Formato de arquivo versionlock: versionlock é um arquivo TOML armazenado em /etc/dnf/versionlock.toml. Ele deve conter uma chave de versão (atualmente a versão suportada é 1.0). Ele também contém uma lista de entradas de bloqueio, em packages. Cada item da lista consiste no nome do pacote e uma lista de condições, que devem ser True para pacotes que correspondem às especificações (usando AND lógico). O conjunto das entradas são combinadas com a operação lógica OR.
Exemplos de arquivos versionlock podem ser vistos em Read the Docs: VersionLock.
Glossário
Especificação de padrões
Globs são padrões que especificam um comjunto de nomes de arquivos usando caracteres “curingas” ou wildcard. Os padrões aceitos pelo dnf são os mesmos usados pela shell. Os seguintes padrões podem ser usados.
* | casa com qualquer número de caracteres, ou vazio. |
? | casa com um caracter único. |
[xyz] | casa com x, y ou z; qualquer um dos caracteres entre colchetes. |
[a-z] | casa qualquer um dos caracteres entre a até z, inclusive. |
[!a-z] ou [^a-z] | não casa com nenhum dos caracteres na faixa de a até z. |
{ } | colchetes não são suportados. |
*.txt | casa com qualquer nome de arquivo que termina com .txt, como “texto.txt”, “aa.txt” ou “.txt”. |
su*.css | casa com “su.css”, “superman.css” ou “sucata.css”. |
?asa.toml | casa com qualquer nome de arquivo como “casa.toml”, “rasa.toml” ou “sasa.toml”. |
??uga.pdf | casa com “aluga.pdf”, “_ruga.pdf” mas não casa com “beluga.pdf”. |
[a-m]luga.hlmt | casa com “aluga.hlmt”, “gluga.hlmt”, “kluga.hlmt”, mas não com “pluga.hlmt”. |
[!1-5]fix.jpg | não casa com “3fix.jpg” nem “5fix.jpg”, mas casa com “7fix.jpg”. |
[^1-5]fix.jpg | o mesmo que acima. |
Padrão NEVRA
Pacotes podem ser identificados exclusivamente pela string NEVRA, que consiste de 5 partes de informação:
Name | Epoch | Version | Release | Architecture
São eles: name do pacote (pode conter hifens), Epoch, um número, timestamp, nem sempre incluído, Version string, alfanumérica,Release da versão, Architecture, string definindo arquitetura do alvo.
Packages (Pacotes)
Muitos comandos usam o parâmetro <package-spec> para selecionar pacotes. Esse argumento é comparado com NEVRAs de pacotes, provides e file provides. Quando <package-spec> é um nome de pacote ou um provide, o usuário pode fornecer regras adicionais de restrição para corresponder aos argumentos. Podem ser usadas comparações de versão (com os operadores =, >, <, >=, <=), como este <package-spec>, >= <version>, onde o argumento <version> está em um formato [EPOCH:]VERSION[-RELEASE] conforme especificado acima.
<package-file-spec> é similar a <package-spec>, exceto que provides matching não é executado. Portanto, <package-file-spec> é correspondido somente com NEVRAs e file provides. <package-name-spec> é correspondido somente com NEVRAs.
Bibliografia
- Read the DocsDNF Commands
- Read the DocsChanges from DNF4 to DNF5