Manutenção básica para Gentoo Linux (com script)
Publicado por Xerxes em 07/02/2026
[ Hits: 296 ]
Gentoo saudável não é só dar um emerge --sync. Por ser uma distribuição rolling release baseada em compilação, pequenos desalinhamentos em bibliotecas, módulos de linguagens (Python/Perl) e arquivos de configuração podem se acumular.
Portage atualize também os binários sem o parâmetro -g, adicione ao seu /etc/portage/make.conf:
FEATURES="getbinpkg"
eix. Instale-o se não tiver.
#!/bin/bash
# Autor: Xerxes Lins (vivaolinux.com.br/~xerxeslins)
# Versão e data: v1.0 (7 fev 2026)
# Descrição: verifica atualizações e integridade do Gentoo sem aplicar mudanças.
echo "--- Iniciando Varredura de Manutenção ---"
# 1. Sincronização
echo "[1/7] Sincronizando repositórios (eix-sync)..."
eix-sync -q
# 2. Atualizações do World (Filtro Refinado)
echo "[2/7] Verificando atualizações do @world..."
updates=$(emerge -puvDN @world --with-bdeps=y 2>/dev/null)
# Contagens específicas baseadas nas siglas do Portage
upgrades=$(echo "$updates" | grep -E "^\[ebuild U" | wc -l)
newslots=$(echo "$updates" | grep -E "^\[ebuild NS" | wc -l)
reinstalls=$(echo "$updates" | grep -E "^\[ebuild R" | wc -l)
binarios=$(echo "$updates" | grep -E "^\[binary" | wc -l)
total_updates=$((upgrades + newslots + reinstalls + binarios))
# 3. Pacotes Órfãos
echo "[3/7] Analisando pacotes órfãos (depclean)..."
orphans=$(emerge -p --depclean 2>/dev/null)
orphan_count=$(echo "$orphans" | grep -E "^ [a-z0-9]*/[a-z0-9]*" | wc -l)
# 4. Integridade de Bibliotecas
echo "[4/7] Verificando links dinâmicos (revdep-rebuild)..."
revdep_out=$(revdep-rebuild -p 2>/dev/null)
revdep_needed=$(echo "$revdep_out" | grep -E "emerge --oneshot" | wc -l)
# 5. Configurações
echo "[5/7] Verificando arquivos de configuração pendentes..."
conf_files=$(find /etc -name '._cfg????_*' 2>/dev/null | wc -l)
# 6. Perl
echo "[6/7] Verificando consistência do Perl..."
perl_needed=$(perl-cleaner --pretend 2>/dev/null | grep -E "emerge" | wc -l)
# 7. Python
echo "[7/7] Verificando consistência do Python..."
python_needed=$(python-updater -p 2>/dev/null | grep -E "emerge" | wc -l)
echo -e "\n--- RELATÓRIO FINAL ---"
echo " • Atualizações (Upgrades): $upgrades"
echo " • Novos Slots (New Slots): $newslots"
echo " • Reinstalações (Reinstall): $reinstalls"
echo " • Pacotes Binários: $binarios"
echo " • Pacotes órfãos: $orphan_count"
echo " • Arquivos de config: $conf_files"
echo -e "\n--- COMANDOS SUGERIDOS ---"
cmd_next=1
total_acoes=0
if [ "$total_updates" -gt 0 ]; then
# Se houver apenas reinstalações/binários R, sugere um comando mais agressivo
if [ "$upgrades" -eq 0 ] && [ "$newslots" -eq 0 ]; then
echo "${cmd_next}. Atualizar (Deep): emerge -auvDN --with-bdeps=y --changed-use @world"
else
echo "${cmd_next}. Atualizar tudo: emerge -auvDN @world"
fi
((cmd_next++))
((total_acoes++))
fi
if [ "$orphan_count" -gt 0 ]; then
echo "${cmd_next}. Limpar órfãos: emerge --depclean"
((cmd_next++))
((total_acoes++))
fi
if [ "$conf_files" -gt 0 ]; then
echo "${cmd_next}. Configurações: dispatch-conf"
((cmd_next++))
((total_acoes++))
fi
if [ "$revdep_needed" -gt 0 ]; then
echo "${cmd_next}. Corrigir links: revdep-rebuild"
((cmd_next++))
((total_acoes++))
fi
if [ "$perl_needed" -gt 0 ]; then
echo "${cmd_next}. Corrigir Perl: perl-cleaner --all"
((cmd_next++))
((total_acoes++))
fi
if [ "$python_needed" -gt 0 ]; then
echo "${cmd_next}. Corrigir Python: python-updater"
((cmd_next++))
((total_acoes++))
fi
if [ "$total_acoes" -eq 0 ]; then
echo "Nada a fazer. Seu sistema está 100% em ordem!"
fi
echo -e "\n--- Fim da Verificação ---"
getbinpkg, ele baixará binários sempre que possível.
Comando ifconfig do Arch Linux não funciona [RESOLVIDO]
Realizar overclock no Miyoo Mini (plus ou normal)
Músicas de Andrew Hulshult no DOOM (WAD)
Emerald: Pacotão de temas (Slackware Linux)
Como copiar e colar rapidamente no terminal
Remover pacotes instalados duplicados (yum)
Programa travou e não responde? Use a função xkill
Nenhum comentário foi encontrado.
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Como enviar dicas ou artigos para o Viva o Linux
Como Ativar a Aceleração por GPU (ROCm) no Ollama para AMD Navi 10 (RX 5700 XT / 5600) no Gentoo
Cairo Dock ainda funcional nos dias de hoje
Configuração de IP fixo via nmcli e resolução de nomes via /etc/hosts no Gentoo
Removendo o bloqueio por erros de senha no Gentoo (systemd)
Papel de Parede Animado no KDE Plasma 6 (Com dicas para Gentoo)
Homebrew: o gerenciador de pacotes que faltava para o Linux!
Elilo e Sofrimento no Slackware (3)
Tentando fazer um "linux ricing" mas falhando miseravelmente... (1)
Não consigo instalar as bibliotecas em Python pelo terminal. (1)









