Raspberry Pi sem vídeo após atualização

Servidor DNS com DNSMasq | Boot do Raspberry pela rede | Raspberry Pi sem vídeo | curso de raspberry | aumentar a vida útil do micro SD

Esse título “Raspberry Pi sem vídeo” é tão estranho quanto parece, mas foi o que aconteceu após fazer dist-upgrade e levar o sistema a um cliente. O sistema operacional estava rodando tranquilamente no Raspberry de laboratório, mas só apresentou problema depois de ser iniciado no cliente. Por quê? E, como depurar?

Houve a primeira inicialização, a rede não conectava e o dist-upgrade trouxe uma surpresinha, que estava no lxpanel. Normalmente faço a configuração remotamente por linha de comando, mas a surpresinha que veio na atualização cag… digo, atrapalhou a configuração que outrora funcionava.

Sintomas e causas da Raspberry Pi sem vídeo

O artigo será breve, mas vou deixar os sintomas:

  • Quando iniciando, a rede não conectava.
  • Quando não iniciando, o sistema carregava até certo ponto.
  • O cursor passa a piscar na tela preta e nada mais carrega.

Com um pouco de sorte, não será necessário remover o cartão SD do sistema. O que aconteceu enquanto o sistema iniciava é que o wicd conflitava com o network-manager. É esse tipo de coisa que me faz desistir de atualizar sistemas com interface gráfica. Bem, esse conflito não causou apenas problema de conexão. Em um loop frenético, em pouco tempo foi preenchido os quase 8GB livres do cartão SD. Após “entupido”, a próxima reinicialização foi o suficiente para que o sistema não completasse o carregamento.

Após (aparentemente) resolvido o problema, em dado momento peguei no dashboard do Grafana uma carga de 600% de CPU (isto é, tinha fila para mais 5 processadores). Claro que isso também elevou a temperatura, então foi o momento de fazer a conexão remota novamente (usando o dwagent invés de teamviewer) e acessando o terminal pude ver na lista de processos (usando o comando top) que o lxpanel (a barra de tarefas) estava “criando vida própria”.

Como a interface gráfica estava inacessível mas um dos Raspberry estava conectado (aconteceu com mais de um), não pude fazer acesso remoto, mas como tenho um processo rodando nele para receber instruções por MQTT, pude publicar uma ordem de execução, cujo processo faz o download de um pacote contendo um setup com regras que eu defino. Com isso, consegui remover o programa e restaurar a interface gráfica. Descrevo agora o processo para restauração local.

 Como remover o wicd e restaurar o sistema

Primeiro, acesse o console. O Linux tem várias tty e elas podem ser acessadas com Ctrl+Alt+Fx, onde x vai de 1 à 6, dependendo do Linux em questão. Ao acessar esse terminal, faça login com usuário e senha, então proceda com os seguintes comandos:

sudo su
service wicd stop
systemctl disable wicd
apt-get -y purge wicd
mv /etc/xdg/autostart/wicd-tray.desktop /etc/dbus-1/wicd.conf.donotstart 2>/dev/null

Ainda, sugiro zerar os arquivos de log, porque se não carregou mais a tela, então o SD deve estar cheio.

sudo su
cd /var/log
ls|while read line; do echo "">$line;done

Após reiniciar o sistema, já deve ser possível acessar a interface gráfica. Reinicie:

shutdown -r now

E ao entrar na interface gráfica, abra o terminal (a janelinha preta na barra de tarefas) e recarregue o lxpanel:

lxpanelctl restart

Isso deve ser o suficiente para resolver todos os problemas e ter a conexão funcionando novamente.

Moral da história: Se quiser uma versão nova de sistema desktop, instale do zero e evite problemas.

 

Revisão: Ricardo Amaral de Andrade