Począwszy od systemu Snow Leopard i ewentualnie Leopard, całe logowanie do systemu odbywa się za pośrednictwem mechanizmu Apple System Log (ASL), który jest jak centralny demon i baza danych dla wszystkich komunikatów dziennika. Demon ASL zapewnia również, że odpowiednie komunikaty dziennika spełniające określone tradycyjne kryteria są zapisywane w tradycyjnych plikach dziennika płaskiego tekstu, takich jak system.log
i kernel.log
, ale wszystko również trafia do bazy danych ASL.
Aby uzyskać więcej informacji na ten temat można znaleźć na stronach podręcznika dla syslog(1)
, logger(1)
, syslog(3)
, asl(3)
, syslog.conf(5)
, asl.conf(5)
, syslogd(8)
, itd.
Możesz użyć syslog(1)
do wysyłania zapytań do bazy danych ASL. Ponadto, /Utilities/Console.app
zapewnia GUI dla tworzenia i zapisywania własnych zapytań do bazy danych ASL.
Jestem prawie pewien, że bufor komunikatów jądra (tradycyjnie przeglądany za pomocą dmesg(8)
) zostanie zrzucony do bazy danych ASL, gdy tylko rozruch rozpocznie się wystarczająco daleko, aby syslogd
mógł zostać uruchomiony, więc nie powinieneś dzwonić dmesg
bezpośrednio, z wyjątkiem siły przyzwyczajenia. Lub jeśli twój system nie uruchamia się wystarczająco daleko, aby syslogd
mógł zostać uruchomiony.
asl.conf(5)
). Więc jeśli debugowałeś problemy z uruchamianiem i restartowałeś kilka razy tego samego dnia, byłyby domyślnie. A jeśli byłby to problem długoterminowy, możesz dostosować okres przechowywania ASL, aby zachować dłużej.dmesg
wyświetla tylko niektóre ostatnie wpisy, ale nie dziennik rozruchu. Próbuję tego w 10.12.6 - nie ma już również pliku „kernel.log”.Otwórz Terminal.app i uruchom
(zostaniesz poproszony o podanie hasła)
Spowoduje to wyświetlenie komunikatów systemowych od ostatniego uruchomienia do chwili obecnej (komunikaty uruchamiania znajdziesz u góry wyjścia). Możesz spróbować
spowoduje to wyświetlenie tych wiadomości strona po stronie.
źródło
Przyjęta odpowiedź (Spiff) nie była dla mnie pomocna, nie ma też pliku kernel.log.
Dla mnie (na MacOS 10.12.6) działa to polecenie:
log show --predicate "processID == 0" --start $(date "+%Y-%m-%d") --debug
Pokazuje wszystkie dzisiejsze komunikaty jądra, w tym proces uruchamiania. Potrzebuje trochę sprzątania, ale przynajmniej zawiera wszystko, co musiałem znaleźć.
źródło
Sam zastanawiam się, jak uzyskać dziennik najbardziej odpowiedni do uruchomienia bez dostępu do konsoli / terminala. Wystąpił błąd podczas uruchamiania, ale można uzyskać dostęp do systemu plików za pomocą dysku instalacyjnego (miałem dostępny rozruch z podwójnego systemu Linux). Plik jest:
Jeśli możesz uzyskać dostęp do konsoli w systemie operacyjnym, lepiej postępuj zgodnie z innymi sugestiami i użyj odpowiednich poleceń.
źródło