===== Exemplos dos comandos dnf e rpm =====
==== Nível Básico ====
* **Atualizar a lista de pacotes disponíveis com `dnf`:**
- sudo dnf check-update
- Verifica se há atualizações disponíveis para os pacotes instalados.
* **Instalar um pacote com `dnf`:**
- sudo dnf install nome_pacote
- Instala o pacote especificado.
* **Remover um pacote com `dnf`:**
- sudo dnf remove nome_pacote
- Remove o pacote especificado, mantendo as configurações.
* **Listar pacotes instalados com `rpm`:**
- rpm -qa
- Exibe todos os pacotes instalados no sistema.
* **Instalar um pacote `.rpm` com `rpm`:**
- sudo rpm -ivh pacote.rpm
- Instala um pacote `.rpm` manualmente.
==== Nível Intermediário ====
* **Atualizar todos os pacotes do sistema com `dnf`:**
- sudo dnf upgrade
- Atualiza todos os pacotes instalados para as versões mais recentes disponíveis nos repositórios.
* **Instalar múltiplos pacotes de uma vez com `dnf`:**
- sudo dnf install pacote1 pacote2 pacote3
- Instala vários pacotes em um único comando.
* **Buscar pacotes disponíveis no repositório com `dnf`:**
- dnf search palavra_chave
- Procura por pacotes que correspondem à palavra-chave especificada.
* **Remover um pacote e seus arquivos de configuração com `dnf`:**
- sudo dnf erase nome_pacote
- Remove o pacote e seus arquivos de configuração.
* **Verificar se um pacote específico está instalado com `rpm`:**
- rpm -q nome_pacote
- Verifica se um pacote está instalado no sistema.
* **Verificar dependências de um pacote com `rpm`:**
- rpm -qR nome_pacote
- Exibe todas as dependências de um pacote instalado.
==== Nível Avançado ====
* **Listar pacotes instalados com detalhes usando `dnf`:**
- dnf list installed
- Exibe a lista de pacotes instalados com informações detalhadas.
* **Verificar informações de um pacote instalado com `dnf`:**
- dnf info nome_pacote
- Exibe detalhes de um pacote específico, incluindo versão, repositório e dependências.
* **Instalar pacotes sem confirmar interações com `dnf`:**
- sudo dnf -y install nome_pacote
- Instala o pacote automaticamente, sem pedir confirmação ao usuário.
* **Obter a lista de arquivos instalados por um pacote com `rpm`:**
- rpm -ql nome_pacote
- Exibe todos os arquivos instalados pertencentes ao pacote.
* **Reinstalar um pacote instalado com `dnf`:**
- sudo dnf reinstall nome_pacote
- Reinstala um pacote já instalado no sistema.
* **Instalar um pacote `.rpm` e resolver dependências automaticamente com `dnf`:**
- sudo dnf install ./pacote.rpm
- Instala um arquivo `.rpm` local e resolve as dependências automaticamente.
* **Verificar a assinatura de um pacote `.rpm` com `rpm`:**
- rpm --checksig pacote.rpm
- Verifica a integridade e a assinatura de um pacote `.rpm`.
==== Nível Especializado ====
* **Adicionar um repositório de terceiros com `dnf`:**
- sudo dnf config-manager --add-repo http://repositório.com/repo/nome_repo.repo
- Adiciona um novo repositório ao sistema.
* **Limpar caches do `dnf` para liberar espaço:**
- sudo dnf clean all
- Limpa os caches de metadados e pacotes, liberando espaço no disco.
* **Excluir pacotes órfãos e dependências desnecessárias com `dnf`:**
- sudo dnf autoremove
- Remove pacotes instalados automaticamente e que não são mais necessários.
* **Gerar um relatório de problemas de dependências com `dnf`:**
- sudo dnf check
- Verifica o sistema em busca de pacotes quebrados ou dependências não resolvidas.
* **Remover um pacote ignorando dependências com `rpm`:**
- sudo rpm -e --nodeps nome_pacote
- Remove um pacote, forçando a remoção sem verificar dependências.
* **Gerar uma lista de pacotes instalados em um arquivo com `rpm`:**
- rpm -qa > lista_pacotes.txt
- Gera uma lista de todos os pacotes instalados e salva no arquivo `lista_pacotes.txt`.
* **Instalar pacotes a partir de uma lista gerada com `rpm`:**
- xargs -a lista_pacotes.txt sudo dnf install
- Reinstala pacotes de acordo com a lista gerada anteriormente.
* **Compilar e instalar um pacote de código-fonte com `dnf`:**
- sudo dnf builddep nome_pacote
- Instala todas as dependências necessárias para compilar um pacote a partir do código-fonte.