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.
Para listar apenas os pacotes do AUR que possuem atualizações pendentes:
yay -Qua
paru -Qua
Pacotes órfãos são dependências que ficaram esquecidas no sistema após a remoção do programa principal.
Remove os órfãos tanto dos repositórios oficiais quanto do AUR:
# Se você usa yay yay -Yc # Se você usa paru paru -c
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). |
pikaur -Scc
.pkg.tar.zst, mas limpa as pastas de extração.pikaur -P --clean
yay -Scc # ou paru -Scc
Apaga todos os pacotes baixados.
sudo pacman -Scc
Utiliza a ferramenta paccache (do pacote pacman-contrib) para manter cópias de segurança locais.
sudo paccache -r
sudo paccache -rk1
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
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)“.
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
AVISO CRÍTICO: Evite o uso de pacman -Scc ou paccache -rkv0 em servidores ou ambientes de produção estáveis.
downgrade imediato para a versão anterior funcional.paccache.timer ativo ou configure-o para manter ao menos as 2 últimas versões estáveis armazenadas em disco.