====== Guia de Manutenção, Limpeza e Automação de Pacotes no Arch Linux ====== Este guia reúne comandos essenciais para verificar atualizações no AUR, remover pacotes órfãos, limpar o cache do sistema e automatizar a manutenção de forma segura. ===== 1. Verificar Atualizações Disponíveis no AUR ===== Para listar apenas os pacotes do AUR que possuem atualizações pendentes: * **Utilizando o Yay:** yay -Qua * **Utilizando o Paru:** paru -Qua ===== 2. Remoção de Pacotes Órfãos ===== Pacotes órfãos são dependências que ficaram esquecidas no sistema após a remoção do programa principal. ==== Via AUR Helpers ==== Remove os órfãos tanto dos repositórios oficiais quanto do AUR: # Se você usa yay yay -Yc # Se você usa paru paru -c ==== Via Pacman (Nativo) ==== O comando abaixo localiza e remove todos os órfãos do sistema: sudo pacman -Rns $(pacman -Qdtq) ^ Parâmetro ^ Função do comando pacman -Qdtq ^ | **-Q** | Consulta (Query) a base de dados de pacotes instalados. | | **-d** | Filtra apenas pacotes instalados como dependências. | | **-t** | Filtra pacotes que não são exigidos por nenhum outro programa atual. | | **-q** | Modo silencioso (quiet), exibindo apenas os nomes dos pacotes (ideal para scripts). | ===== 3. Limpeza do Cache do AUR ===== ==== Utilizando o Pikaur ==== * **Limpeza Completa (Cache + Compilações):** Deleta instaladores e pastas temporárias. pikaur -Scc * **Limpar Apenas Arquivos de Compilação (Build Files):** Mantém os instaladores ''.pkg.tar.zst'', mas limpa as pastas de extração. pikaur -P --clean ==== Utilizando o Yay ou Paru ==== yay -Scc # ou paru -Scc ===== 4. Limpeza do Cache do Pacman ===== ==== Limpeza Total ==== Apaga **todos** os pacotes baixados. sudo pacman -Scc ==== Limpeza Parcial Segura (Recomendado) ==== Utiliza a ferramenta ''paccache'' (do pacote ''pacman-contrib'') para manter cópias de segurança locais. * **Manter apenas as 2 últimas versões** de cada pacote (para caso de downgrade): sudo paccache -r * **Remover cache de programas já desinstalados**: sudo paccache -rk1 ===== 5. Automação de Limpeza com Systemd ===== O Arch Linux fornece um timer nativo através do pacote ''pacman-contrib'' para limpar o cache do pacman automaticamente todas as semanas, mantendo por padrão as 3 últimas versões de cada pacote. Para ativar e iniciar o timer do sistema, execute: sudo systemctl enable paccache.timer sudo systemctl start paccache.timer Para verificar se o agendamento está funcionando corretamente: systemctl status paccache.timer ===== 6. Solução de Problemas (Troubleshooting) ===== Ao tentar remover pacotes órfãos com ''pacman -Rns $(pacman -Qdtq)'', você pode se deparar com erros de **"falha na preparação da transação (não foi possível satisfazer as dependências)"**. ==== Como resolver conflitos de órfãos: ==== 1. **Identifique o bloqueio**: O terminal exibirá qual pacote instalado ainda depende do órfão que você está tentando remover. 2. **Tornar o pacote explícito**: Se o "órfão" na verdade é um programa que você quer continuar usando de forma independente, mude o status dele para "explicitamente instalado": sudo pacman -D --asexplicit nome_do_pacote 3. **Remover em cascata**: Se você deseja apagar o órfão e também o programa que depende dele, adicione-os juntos no comando de remoção: sudo pacman -Rns nome_do_orfao nome_do_outro_pacote ===== 7. Nota de Segurança para Ambientes de Produção ===== **AVISO CRÍTICO:** Evite o uso de ''pacman -Scc'' ou ''paccache -rkv0'' em servidores ou ambientes de produção estáveis. * **Risco de Quebra do Sistema:** O Arch Linux é uma distribuição //rolling release//. Se uma atualização de sistema quebrar um serviço essencial (como o servidor web ou o kernel), o cache local do pacman é a sua **única salvaguarda rápida** para realizar um ''downgrade'' imediato para a versão anterior funcional. * **Dependência da Rede/Archive:** Sem o cache local, você será obrigado a buscar o pacote antigo no //Arch Linux Archive// externo, aumentando o tempo de inatividade (downtime) do ambiente de produção. * **Boas Práticas:** Em servidores, mantenha o ''paccache.timer'' ativo ou configure-o para manter ao menos as **2 últimas versões** estáveis armazenadas em disco.