Können Sie genau feststellen, wann der iMac vom Strom getrennt wurde?

(Dies ist nicht nur die Frage, wann ein normaler Stromausfall aufgetreten ist.)

Mein 2017er iMac wurde heute bei einem Einbruch gestohlen, aber die interne Festplatte war tot, sodass sie von einer externen SSD lief. Sie haben alles abgesteckt, einschließlich des externen Laufwerks, und es zurückgelassen. Ich versuche herauszufinden, ob es ein Systemprotokoll gibt, das eine fortlaufende Aufzeichnung mit ausreichender Zeitauflösung führt, um nahezu genau herauszufinden, wann die Stromversorgung unterbrochen wurde.

Ich kann es nicht hochfahren, aber ich kann das Dateisystem auf einem anderen Mac durchsuchen. Ich konnte ein paar Plist-Dateien finden, die zuletzt aktualisiert wurden, aber es gibt mir nur ein Fenster von mehreren Stunden, und ich möchte, wenn möglich, genauer werden. Ich habe Catalina ausgeführt und kann nichts Neueres in finden~/Library/Logs/DiagnosticReports/

Gibt es Systemprozesse auf sehr niedriger Ebene, die einen Datensatz haben könnten? So etwas wie cron(obwohl ich keine geplanten Jobs ausgeführt habe)?

Diese Frage könnte umformuliert werden als "Wie finde ich die zuletzt geänderte Datei auf einer Festplatte?"
Bitte geben Sie keine Antworten / Lösungen in die Frage ein, sondern posten Sie sie stattdessen unten als Antwort.

Antworten (2)

Sie möchten alle Dateien finden, die neuer sind (basierend auf dem Zeitpunkt der letzten Änderung) als die .plist-Dateien, die Sie bereits gefunden haben. Wenn dies also der Name der .plist-Datei ist, die Sie bereits kennen ...

/Users/yourusername/Library/Preferences/whatever.plist

Dann möchten Sie find wie folgt verwenden :

find / -newermm /Users/yourusername/Library/Preferences/whatever.plist

Möglicherweise sehen Sie einige Zeilen wie Permission denied: Ignorieren Sie diese einfach, es ist in Ordnung.

Dadurch wird die gesamte Festplatte nach Dateien durchsucht, auf die vor kurzem zugegriffen wurde als auf Ihre Vergleichsdatei. Es kann eine Weile dauern. Wenn Sie viele Ergebnisse erhalten, wählen Sie eines der Ergebnisse aus und versuchen Sie den findBefehl erneut, indem Sie den Befehl durch Ihre neuere Datei ersetzen. Spülen und wiederholen, bis Sie die neueste Datei gefunden haben.

Das hat funktioniert, danke! Ich habe einige kleinere Anpassungen vorgenommen und die genaue Lösung, die für mich funktioniert hat, in einer Bearbeitung meiner ursprünglichen Frage gepostet.

Sie müssten das Systemprotokoll nach dem letzten „Shutdown Cause“-Code durchsuchen.

Es wird nichts in geben cron, da es zugunsten von verworfen wurde launchd. launchd(oder ) wäre jedoch cronnicht hilfreich, da diese Protokolle anzeigen, wann Dinge gestartet werden oder Fehler auftreten. Sie zeigen selten, wann Dinge heruntergefahren werden - insbesondere wenn sie ordnungsgemäß ausgeschaltet sind (kein Fehler).

Verwenden Sie den folgenden Befehl, um das Protokoll zu durchsuchen:

$ log show --predicate "process == kernel" | grep -i "shutdown cause"

Weitere Informationen zum Durchsuchen des Protokolls finden Sie in dieser Antwort .

Würde das funktionieren, wenn sie einfach den Strom ausschalten würden, anstatt ihn herunterzufahren? Würde es nicht beim nächsten Booten geschrieben werden?
Das ist richtig. Hast du irgendwelche Energiespareinstellungen aktiviert? Sie könnten nach dem letzten Power Nap Wake-Ereignis suchen