¿Cómo puedo saber que mi último apagado se realizó correctamente en Ubuntu 11.10 o si la máquina se apagó antes de apagar el sistema operativo?
¿Cómo puedo saber que mi último apagado se realizó correctamente en Ubuntu 11.10 o si la máquina se apagó antes de apagar el sistema operativo?
Respuestas:
Si la máquina se apagó correctamente, entonces debe haber un kern.log
archivo de registro de apagado registrado en el /var/log
directorio. Después de un apagado cada vez que se produce un arranque normal, el sistema operativo escribe el registro para el mismo en kern.log. Por lo tanto, cada registro de arranque debe ir precedido de un registro de apagado si el proceso de arranque y apagado fue normal.
Cada vez que ocurre un apagado normal "Kernel logging (proc) stopped."
se escribe en kern.log. Del mismo modo, cada vez que se produce un arranque"imklog 5.8.1, log source = /proc/kmsg started."
se escribe en kern.log
Estos dos mensajes deben estar en el orden si el apagado fue normal en lugar de un apagado brusco. No debería aparecer el mensaje " imklog 5.8.1, log source = / proc / kmsg iniciado " sin el mensaje " Kernel logging (proc) stop " si el cierre anterior fue normal. Los dos mensajes siempre deben aparecer en pares en el registro.
Simplemente escriba en la terminal: -
gedit /var/log/kern.log
y verifique el apagado y los pares de registro de arranque. Si no se encuentran en pares, el cierre debe haber sido abrupto.
kern.log.1
.
cat /var/log/syslog | grep -i "stopped"
(y similar. También probé la cordura al contrario), a pesar de que esto era claramente parte de los mensajes de apagado anteriores ... (el registro visible, al presionar ESC para matar la pantalla de inicio mientras se apaga) - Alguien tiene una actualización?
A partir de Ubuntu 16.04, un apagado limpio seguido de un reinicio adecuado escribirá estas 2 líneas una tras otra en / var / log / syslog
Mar 9 14:14:06 *YOUR-HOSTNAME* rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="1086" x-info="http://www.rsyslog.com"] exiting on signal 15.
Mar 9 15:23:42 *YOUR-HOSTNAME* rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="1069" x-info="http://www.rsyslog.com"] start
Hola, puede ejecutar un script para verificar si el último apagado fue correcto o no. Simplemente ponga las siguientes líneas en un script bash y ejecútelo después de un arranque del sistema.
#!/bin/bash
B="1"
touch data_file
echo $(($(grep -nr "$(cat /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog | grep $(cat /var/log/kern.log | grep "$(date -d $(who -b | awk '{printf $3}') '+%b %-d')" | grep imklog | cut -d' ' -f3 | sort -k1 -r | sort --unique --stable -k2,3))" /var/log/kern.log | awk '{printf $1}' | grep -oE "[[:digit:]]{1,}")-$B)) > data_file
if [[
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $6}') == "Kernel") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $7}') == "logging") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $8}') == "(proc)") &&
($(sed -n $(cat data_file)p /var/log/kern.log | awk '{print $9}') == "stopped.")
]]; then
echo Last Shutdown-proper
else
echo Last Shutdown_not proper
fi
rm data_file
NOTA: esté en un usuario root para ejecutar el script. No dañará su sistema :)