"O sistema está sendo desativado para reinicialização agora"

13

Estou conectado a um beagleboard via tty e de repente vejo esta mensagem:

Broadcast message from root@arm
        (unknown) at 11:40 ...

The system is going down for reboot NOW!
[  143.036193] Restarting system.

O sistema é o Ubuntu 12.10. Existe um lugar onde eu possa descobrir por que o sistema decidiu cair?

UPDATE: Mais informações

  • Na verdade, isso acontece o tempo todo, o painel é reiniciado a cada 1 a 5 minutos.
  • Verifiquei se nenhum programa ou daemon é executado na inicialização.
  • Não consigo encontrar Restartingnenhum lugar em nenhum arquivo/var/log
  • Em syslogantes de uma reinicialização não é consistentemente umFeb 10 09:20:00 arm rsyslogd: [origin software="rsyslogd" swVersion="5.8.6" x-pid="317" x-info="http://www.rsyslog.com"] exiting on signal 15.
Thomas
fonte
@ JMCF125 Atualizei minha pergunta com mais algumas informações
Thomas
Acontece que esse rsyslogdé simplesmente o daemon que transmite essas mensagens ... Talvez você tenha um malware raro do Linux ... 1 a 5 minutos é pouco tempo, tente inserir um Live CD e descubra mais. Se você não receber nada, aconselho a reinstalar, possivelmente outra distribuição.
JMCF125
No começo, eu estava pensando em um problema físico na placa, como a tensão elétrica ficando um pouco baixa demais, mas, dado o sistema saberia disso?
Thomas
Se a energia fosse o problema, com o Live CD o mesmo aconteceria.
JMCF125

Respostas:

11

A maneira que eu rastrearia isso seria substituir os utilitários halte shutdownpor um script.

Primeiro, crie um script como o seguinte em /bin/fakehalt:

#!/bin/bash
exec >>/tmp/fakehalt.log 2>&1
date
echo "CMD=$0 PID=$$"
ps -ef --forest
echo '========'

Em seguida, instale-o com:

chmod a+x /bin/fakehalt
mv /sbin/halt /sbin/halt.orig
ln -s /bin/fakehalt /sbin/halt
mv /sbin/shutdown /sbin/shutdown.orig
ln -s /bin/fakehalt /sbin/shutdown

Isso criará um arquivo de log /tmp/fakehalt.logsempre que for chamado. Ele registrará o nome que foi chamado como ( haltou shutdown) é seu próprio PID e, em seguida, um diagrama em árvore de todos os processos no momento.

Isso deve fornecer todas as informações necessárias para localizá-lo. Basta olhar através da psárvore e encontrar o que chamou o script.


/sbin/rebootdeve ser um link simbólico para /sbin/halt. Se não estiver, substitua-o também.


Se isso ainda não o capturar, substitua- /sbin/inito também (pois também pode ser usado para reiniciar o sistema). Mas isso é perigoso, como se o sistema reiniciasse, não funcionaria corretamente.

Patrick
fonte
I como sua solução, eu tentei e ele me ajudou a encontrar o problema (um emprego em fcron deixada por alguém que fez o desligamento de propósito quando um cheque era falso)
Thomas
1
@ Thomas Você mencionou anteriormente que fcronestava vazio, só queria saber por que a tarefa não apareceu, você pode vê-la agora?
X Tian
@XTian erro humano, eu verifiquei cron mas não fcron
Thomas
@ Thomas, a propósito, por que havia um emprego em fcron para encerrar?
JMCF125
1
@ JMCF125 Sim, foi o caso (problemas de desconexão USB do beagleboard) e me levou a ler tópicos muito longos sobre grupos do Google. Foi meu erro com o fcron, foi um incêndio falso. De alguma forma, o script no fcron diz "reiniciar" e é por isso que existe uma mensagem abrangente no kern.log. Obrigado por acompanhar
Thomas
3

Execute seu kernel com algo parecido init=/bin/bash. Isso deve garantir que nenhum processo esteja sendo executado além do shell this.

Verifique se existe mais um problema de reinicialização.

Em seguida, descubra qual sistema init você usa normalmente e veja todos os serviços iniciados por ele.

Tente desativar os serviços até que o problema de reinicialização desapareça.

michas
fonte
em qual arquivo você escreve init=/bin/bash?
Thomas
Isso depende do seu carregador de inicialização. (grub, syslinux, etc.) Normalmente, o seu carregador de inicialização deve oferecer uma maneira interativa de escolher seu kernel e adicionar parâmetros adicionais. Ele também possui algum arquivo de configuração (geralmente em / boot) para adicionar permanentemente parâmetros.
Michas
2

Bem, é uma dessas possibilidades.

  • Alguém está desligando
  • cron está sendo desligado (ou iniciou algo que está sendo desligado)
  • o gerenciamento de energia aciona um desligamento (sem sistema de energia, hibernação, suspensão ou inatividade, o botão liga / desliga é pressionado)
  • reinicialização solicitada após a instalação do pacote
X Tian
fonte
Infelizmente cron e fcron estão vazios, e eu sou o único ligado à placa, ninguém está em execução desligamento
Thomas
O OP diz: «Garantei que nenhum programa ou daemon fosse executado na inicialização.». E duvido que alguém tenha invadido seu computador para desligá-lo de vez em quando. Talvez seja outra coisa.
JMCF125
Procure shut (independente de maiúsculas e minúsculas não reiniciando) em var / log / *
X Tian
nenhum resultado para "shut"
Thomas