Miré esto un poco y parece factible, pero usted tendrá que mirar a su comportamiento con el sistema en el tiempo para determinar exactamente qué mensajes en los registros para grep. Hice el siguiente conjunto de pasos para analizar la historia completa de los ciclos de sueño / vigilia para este MacBook y se remonta todo el camino hasta el 12 de agosto.
Condiciones previas: Escribir al usuario no root en ~/Downloads. Cambiar las rutas y los nombres de los archivos de salida como se desee.
#!/bin/bash
#
# Read system wake/sleep cycles from kernel logs from oldest to newest.
#
# First, read the archived kernel logs for wakes.
for file in $(ls -r /var/log/kernel.log.*) ; do bunzip2 -c $file | grep 'Wake reason:' >> ~/Downloads/wakeup.txt; done
#
# Read current kernel.log for wakes.
grep 'Wake reason:' /var/log/kernel.log >> ~/Downloads/wakeup.txt
#
# Read archived kernel logs for sleeps.
for file in $(ls -r /var/log/kernel.log.*) ; do bunzip2 -c $file | grep ': sleep' >> ~/Downloads/wakeup.txt; done
#
# Read current kernel.log for sleeps.
grep ': sleep' /var/log/kernel.log >> ~/Downloads/wakeup.txt
#
# Sort raw output from greps for chronological picture.
sort -o ~/Downloads/sortedwake.txt ~/Downloads/wakeup.txt
Eso debería darte un salto decente para llegar a una imagen más completa. Puedes examinar los registros del kernel para saber cuándo se reinició el sistema, etc. Una vez que sepas qué filtrar, podrás ampliarlo bastante. Diviértete con ello.
Ah, una nota final: si estás examinando un sistema que visita muchas redes, verás que el nombre de tu sistema cambia en los registros según lo que el servidor DNS asocia con tu dirección IP. Parece un poco extraño, pero es un comportamiento bastante normal.
0 votos
System.log se rota cada cierto tiempo y puedes ver los registros anteriores si buscas en la consola system.log.0.gz, system.log.1.gz etc. No sé si incluso estos se remontará 30 días sin embargo.