Tempo de atividade do sistema da última inicialização

Tempo de atividade do sistema da última inicialização

Se o sistema for desligado abruptamente. Então será possível saber a que horas foi fechado? Abruptamente significa devido a falha de energia ou devido às chaves mágicas do sysrq. Se eu estiver registrando algo a cada poucos segundos, terei uma resposta, mas se não, há alguma maneira?

Estou usando um sistema personalizado baseado em console. O kernel é 5.3

Responder1

Você pode saber quando o sistema foi reiniciado de várias maneiras... "tempo de atividade", "última reinicialização", etc. Dizer quando foi desligado é um pouco mais problemático. Supondo que você tenha o registro regular do sistema via rsyslogd em execução, você pode usar o módulo immark como sua rotina de "registro de algo a cada poucos segundos" adicionando o seguinte ao /etc/rsyslogd.conf:

$ModLoad immark
$MarkMessagePeriod <your time granularity here, in seconds>
$ActionWriteAllMarkMessages on

Você também não pode se preocupar e pode ver uma das duas coisas no arquivo de mensagens. Se o arquivo for girado na inicialização do sistema, você pode simplesmente olhar a data da versão anterior do arquivo usando 'ls -l' para ter uma boa estimativa de quando o sistema parou de gravar nele. Se você não girar o log do sistema, poderá obter a mesma precisão observando o carimbo de data/hora da linha logo antes da linha que indica a reinicialização. Nossas reinicializações são mais ou menos assim:

2020-03-29T03:20:01.529437-04:00 [hostname] rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-41.el7_7.2" x-pid="1615" x-info="h
ttp://www.rsyslog.com"] rsyslogd was HUPed

Se o desligamento não foi inesperado, fica mais fácil, pois o criador de logs do sistema gravará uma mensagem no log antes de morrer.

Se você desativou o log do sistema, tudo isso se tornará discutível, é claro. Se você ainda estiver registrando coisas nos logs do sistema, poderá obter as estatísticas de alguns dos arquivos e descobrir aproximadamente quando o sistema foi desativado, observando os tempos modificados:

root# stat /var/log/messages-01.gz
  File: '/var/log/messages-01.gz'
  Size: 185529          Blocks: 368        IO Block: 4096   regular file
Device: fd06h/64774d    Inode: 12689803    Links: 1
Access: (0640/-rw-r-----)  Uid: (    0/    root)   Gid: (658178/  mssgro)
Access: 2020-04-08 10:27:47.691311523 -0400
Modify: 2020-04-05 03:01:34.000000000 -0400  <=== that's what you're after ==
Change: 2020-04-07 18:16:40.252668164 -0400
 Birth: -

Escolha o mais recente dos arquivos escolhidos e você terá uma boa estimativa de quando o sistema parou.

Apenas algumas idéias, espero que ajudem.

informação relacionada