Wie zeige ich das Time Machine Log in MacOS Sierra an?

39

In der vorherigen Version von OSX konnte ich die Ergebnisse früherer Time Machine-Sicherungsjobs folgendermaßen anzeigen:

sudo syslog -F '$Time $Message' -k Sender com.apple.backupd

Jetzt ist Syslog nicht mehr Teil des Betriebssystems. Es wurde durch " log " ersetzt.

Ich konnte mit " log " keine Informationen zu Zeitmaschinenaufträgen finden . Ich habe auch (die neue Version von) Konsole nicht verwendet.

Irgendwelche Vorschläge?

Arnstein
quelle

Antworten:

53

macOS Sierra verwendet Unified Logging (Speicher und Datenspeicher; keine Textdateien mehr).

Mit dem log(1)Dienstprogramm können Sie jedoch Protokolle anzeigen, filtern, bearbeiten usw. Sehen Sie man log, und hier ist ein paar Time Machine-spezifische Beispiele:

Streame das Log, live (wie tail):

log stream --style syslog --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Nicht streamen, sondern den Log-End-Exit anzeigen:

log show --style syslog --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Chipster
quelle
Hallo Chipster, danke für die Antwort. Ihr Vorschlag hat leider nicht funktioniert. Ich habe den zweiten Ihrer Befehle angewendet (Nicht streamen) und alles, was ich bekam, war Folgendes: 2016-09-22 10: 25: 17.242554-0700 localhost eventsd [4378]: (TimeMachine) TimeMachineMonitor Wird ausgeführt, nachdem zwei Zeitmaschinen ausgeführt wurden Backups.
Arnstein
Hallo nochmal Chipster, Dein zweiter Befehl (Nicht streamen) funktioniert jetzt bei mir. Dieser Befehl gibt jedoch nur Informationen zur letzten von mir durchgeführten Time Machine-Sicherung zurück. Ich spekuliere, dass nach jedem Neustart alle Protokollinformationen verloren gehen. Glaubst du, das ist wahr? Gibt es eine Möglichkeit, ältere Informationen abzufragen?
Arnstein
Arnstein, ich bin auch neu in diesem Bereich, aber nach meinem Verständnis werden Protokollnachrichten der Stufe "Info" standardmäßig nur im Speicher gespeichert und überstehen daher einen Neustart nicht. Wenn TimeMachine-Info-Nachrichten auf der Festplatte gespeichert werden sollen, versuchen Sie Folgendes: # log config --subsystem com.apple.TimeMachine --mode persist:info(als Root).
Lennart L
29

Ich hatte ein ähnliches Problem. Ich habe dieses Shell-Skript geschrieben, um die letzten 12 Stunden der Time Machine-Aktivität im Protokoll anzuzeigen, und verfolge das Protokoll dann weiterhin live.

I nenne es tm-log

#!/bin/sh

filter='processImagePath contains "backupd" and subsystem beginswith "com.apple.TimeMachine"'

# show the last 12 hours
start="$(date -j -v-12H +'%Y-%m-%d %H:%M:%S')"

echo ""
echo "[History (from $start)]"
echo ""

log show --style syslog --info --start "$start" --predicate "$filter"

echo ""
echo "[Following]"
echo ""

log stream --style syslog --info --predicate "$filter"
Jim Randell
quelle
5
logNimmt einen --lastParameter, der einfacher sein kann als die Berechnung --start(z. B. --last 12hum die letzten 12 Stunden
Meilen
10

Wenn Sie eine Live-Ansicht von Time Machine-Nachrichten in der GUI Console-App suchen, aktivieren Sie "Info-Nachrichten einbeziehen" im Menü "Aktion".

Die nützlichen Time Machine Statusmeldungen werden dann angezeigt und können mit einer Suche wie gefiltert werden Category:TMLogInfo.

Es sieht so aus, als ob log(1)es zum Anzeigen des Verlaufs erforderlich ist, da die Konsole nichts von vor dem Öffnen anzeigt.

gabedwrds
quelle
Danke dafür! Ich musste auch hinzufügen Category:TMLogError, um die Fehlermeldungen sehen zu können;)
gsaslis
2

Derzeit ist meine Lösung zu verwenden log stream --style syslog --predicate 'subsystem == "com.apple.TimeMachine"' --info. Aber ich bin nicht ganz glücklich damit und suche immer noch nach einem besseren Weg.

Damien Clauzel
quelle
0

Kopieren Sie das Folgende und fügen Sie es genau wie unten gezeigt ein

log show --predicate 'subsystem == "com.apple.TimeMachine"' --info | grep 'upd: (' | cut -c 1-19,140-999

PJ Mele
quelle
0

In "terminal" eingeben (oder von hier kopieren und einfügen):

log stream --style syslog  --predicate 'senderImagePath contains[cd] "TimeMachine"' --info

Dies funktioniert, aber während dies gestreamt wird, wird die Aktivität so angezeigt, wie sie stattfindet. Wenn keine Zeitmaschinenaktivität vorhanden ist, wird nicht viel (oder nichts) angezeigt. Anfänglich ist es möglich, ein paar Tage altes Zeug abzulegen, das irgendwo zwischengespeichert wird, aber dann wird das Protokoll in ziemlich Echtzeit angezeigt.

Ich habe diesen Protokolldatenstrom verwendet, um eine bestimmte beschädigte Datei auf meinem Datenträger zu identifizieren, die den Abschluss von Sicherungen verhindert hat. Die Datei (eigentlich ein ganzer Ordner) wurde entfernt und das Woilla-Backup beim ersten Start abgeschlossen. Keine weiteren Fehler.

Shahar
quelle