Tiempo de actividad del sistema del último arranque

Tiempo de actividad del sistema del último arranque

Si el sistema se apaga abruptamente. Entonces ¿será posible saber a qué hora se cerró? Abruptamente significa debido a un corte de energía o debido a las teclas mágicas de sysrq. Si registro algo cada pocos segundos, tendré una respuesta, pero si no, ¿hay alguna manera?

Estoy usando un sistema personalizado basado en consola. El núcleo es 5.3

Respuesta1

Puede saber cuándo se reinició el sistema de varias maneras... "tiempo de actividad", "último reinicio", etc. Decir cuándo se apagó es un poco más problemático. Suponiendo que tiene un registro regular del sistema a través de rsyslogd en ejecución, puede usar el módulo immark como su rutina de "registrar algo cada pocos segundos" agregando lo siguiente a /etc/rsyslogd.conf:

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

Tampoco puedes molestarte y puedes mirar una de dos cosas en el archivo de mensajes. Si el archivo se rota durante el inicio del sistema, simplemente puede mirar la fecha en la versión anterior del archivo usando 'ls -l' para tener una idea bastante clara de cuándo el sistema dejó de escribir en él. Si no rota el registro del sistema, puede lograr la misma precisión mirando la marca de tiempo de la línea justo antes de la línea que indica reinicio. Nuestros reinicios se parecen un poco a esto:

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

Si el cierre no fue inesperado, se vuelve más fácil, ya que el registrador del sistema escribirá un mensaje en el registro antes de que muera.

Si ha desactivado el registro del sistema, todo esto se vuelve discutible, por supuesto. Si todavía estás registrando cosas en los registros del sistema, puedes obtener las estadísticas de algunos de los archivos allí y calcular aproximadamente cuándo desapareció el sistema mirando los tiempos de modificación:

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: -

Elija el último de los archivos que elija y tendrá una estimación bastante buena de cuándo se detuvo el sistema.

Sólo algunas ideas, espero que ayuden.

información relacionada