Po pierwsze, pozwólcie mi zacząć od tego, że wiem, iż jest to starszy wątek. Komentuję to tylko po to, aby inni, którzy znajdą to podczas grzebania w sieci (tak jak ja dzisiaj), mieli jasną odpowiedź.
Po drugie, proszę zauważyć, że poniższe polecenie jest złą praktyką i należy do kategorii “bezużytecznych zastosowań kota” (szukaj w google)…
cat /var/log/messages | grep "`LC_ALL=en_en.utf8 date +"%b %e"`"
Ta linia powinna zostać zmieniona na:
grep "`LC_ALL=en_en.utf8 date +"%b %e"`" /var/log/messages
grep, i większość poleceń unix/linux (sed, awk, etc…) nie wymaga cat do odczytania zawartości pliku. Wystarczy umieścić ścieżkę i nazwę pliku po poleceniu, aby przekazać je jako argument. Dodawanie potoku i kolejnej zewnętrznej komendy (cat) to tylko marnowanie czasu i zasobów.
Na koniec, jeśli chodzi o to, gdzie znaleźć zapisy wyłączeń i/lub restartów systemu, użyj ostatniej komendy, ponieważ właśnie do tego jest ona przeznaczona. Odczytuje ono plik dziennika /var/log/wtmp w poszukiwaniu wszystkich wpisów dotyczących logowania/wylogowania. Ponieważ wyłączenia i restarty są w rzeczywistości zdarzeniami logowania/wylogowania na poziomie systemu, są one tutaj rejestrowane. To samo dotyczy zamykania konsoli root, jest to zdarzenie logowania/wylogowania.
Przykład:
last -5 reboot shutdown root
Spowoduje to wyświetlenie 5 ostatnich wpisów dotyczących restartu, wyłączenia i root'a (w tym wyłączenia konsoli) w dzienniku wtmp.
Wynik:
reboot ~ Mon Mar 23 14:51
shutdown ~ Mon Mar 23 14:49
root console Mon Mar 23 14:49 - shutdown (00:00)
reboot ~ Mon Mar 16 09:54
shutdown ~ Thu Mar 12 17:41
Mam nadzieję, że to pomoże każdemu, kto natknie się na ten wątek :-)