Table of Contents

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:

yay -Qua
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

pikaur -Scc
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.

sudo paccache -r
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.