Was ist die Verwendung von snapshot.db?


16

Nach der Installation von Mavericks entdeckte ich eine snapshot.db(1,5 GB) Datei in:

/var/db/systemstats/snapshots.db

Wozu dient diese Datei? Ist es sicher, es zu löschen?


Ich habe das gleiche Problem. 1,5 GB Snapshot.db-Datei. 27 "iMac Core i7 mit Mavericks. Ich habe mein" Feedback "an Apple gesendet. Ich habe es als Fehler gemeldet.

Nur für den Fall, dass Sie es nicht löschen möchten, gibt es eine Diskussion, um die Größe in dieser Diskussion zu reduzieren (danke @sayzlim)
nohillside

Sie können es löschen, nachdem Sie den Dienst wie hier beschrieben beendet haben .
Kenorb

Antworten:


13

Auf einer höheren Ebene ist die von Ihnen aufgeführte Datei eine binäre Datenbankdatei, die vom Betriebssystem verwendet wird, um den Energieverbrauch, die Leistung und die Schlaf- / Wachdaten im Zeitverlauf zu verfolgen. Trotz der allgemeinen Anweisung, nichts aus / var / db zu löschen, scheint dies keinen übermäßigen Schaden zu verursachen, wenn Sie diese eine Datei gelegentlich löschen.

Dies speist die neuen Sichtweisen des Energieverbrauchs ein und kann möglicherweise bei der Diagnose hilfreich sein, wenn Sie später Probleme haben und Apple um Hilfe bei der Diagnose des Systems bitten.

Das Programm, das in diese Datei schreibt (sowie die zugehörigen Dateien in / var / db / systemstats), heißt systemstatsd .

Sie können den Befehl systemstats --help verwenden , um weitere Details abzurufen und aus dieser Datei zu lesen, wenn Sie neugierig sind. Die Handbuchseite, auf die ich verweise, ist die Shell einer Handbuchseite, und der Code ist von Apple zum größten Teil undokumentiert, abgesehen von der Dokumentation, die in das Tool integriert ist und über die Hilfeoption aufgerufen werden kann.

Es ist im Allgemeinen nicht sicher, irgendetwas in / var / db zu löschen, da das System davon abhängen könnte, dass die Dateien kohärent sind, aber ich habe versucht, den gesamten Inhalt dieses Verzeichnisses durch Booten im Einzelbenutzermodus zu entfernen, und das System scheint die Dinge ordnungsgemäß neu zu erstellen und zu handhaben Alle Versuche, diese Dateien manuell zu bereinigen.

Ich würde nicht empfehlen, irgendetwas aus den Systemstatistiken auf einem Mac zu löschen, den Sie noch nicht löschen und neu installieren können. Außerdem erhalten Sie möglicherweise ungewöhnliche Informationen aus dem Aktivitätsmonitor, wenn Sie es schaffen, die Datenbank und die Protokolldateien in einem inkonsistenten Zustand zu erhalten. Abgesehen davon sieht es so aus, als ob das System defensiv programmiert wurde, um die in diesem Verzeichnis fehlenden Elemente zu behandeln und im Allgemeinen keine fehlerhaften Vorgänge zu verursachen, wenn Sie dies dennoch tun.


5

Ich habe einen Fehlerbericht für das gleiche Problem bei Apple eingereicht. Sie antworteten, dass snapshots.db Daten für die letzten 3 Tage speichern und auf den meisten Systemen 70-150 MB erreichen soll. Auf meinem (OS X 10.9, iMac 27-Zoll 2,8 GHz i7, 8 GB RAM) hat die aktuelle snapshots.db-Datei nun 2,12 GB erreicht und wächst weiter. Bisher keine weitere Hilfe von Apple - sie können das Verhalten anscheinend nicht reproduzieren.

Es ist möglich, die Datei manuell zu löschen, nachdem meine erste 1,76 GB erreicht hatte. Sie können es auch durch eine leere, unveränderbare snapshots.db-Datei des Systems ersetzen, die verhindert, dass das System darauf schreibt, obwohl alle paar Minuten Konsolenmeldungen angezeigt werden, bei denen die Bestätigung fehlgeschlagen ist.

Ich habe keine wirkliche Verwendung für diese Datei; 70-150 MB wären in Ordnung, aber der auf meinem System belegte Speicherplatz ist inakzeptabel.

Ich empfehle Ihnen, einen Fehlerbericht auch bei Apple einzureichen.


Ich werde das Gleiche tun und die Datei löschen, um zu sehen, wie groß die Dateigröße ist, die sie reproduziert. Hoffentlich wird die reproduzierte Datei ungefähr 250 MB groß sein, da ich seit Lion ein Upgrade anstelle einer Neuinstallation durchgeführt habe.
sayzlim

1
Wenn Sie eine Frage stellen möchten, wie Sie den Inhalt der Datei sichern oder zusammenfassen können, kann dies Ihnen, @sayzlim und anderen mit Ordnern> 1 GB, helfen, zu wissen, was gespeichert wird.
bmike

3

Alternativ können Sie den Launchdaemon deaktivieren, der diese Snapshots erzeugt und in diese Datei schreibt. Ich habe dies auf meinem rMBP mit Mavericks gemacht, da die Konsole mit "PowerStats" -Protokollen überflutet war. Nachdem ich den folgenden Befehl ausgeführt habe, wurden sowohl die Konsolenprotokollberichte als auch das Wachstum der Datei, auf die Sie verweisen, beendet.

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstats.daily.plist 

3

Der systemstatsdDämon sammelt eine Auswahl von Systemstatistiken zum Stromverbrauch des Systems und wird normalerweise unbemerkt im Hintergrund ausgeführt. Im Allgemeinen gibt es also nichts zu befürchten.

Wenn die Datenbank - Datei zu groß (wird snapshots.db), kann sie geleert werden , wenn Sie / Stopp - Entlade den Dienst gemäß diesem Beitrag :

sudo launchctl stop com.apple.systemstatsd
sudo launchctl stop com.apple.systemstatsd.analysis

dann spülen Sie die Datei durch:

sudo sh -c ">/private/var/db/systemstats/snapshots.db"

2

Ich kann das Laufen bestätigen

sudo sqlite3 /private/var/db/systemstats/snapshots.db "vacuum;"

komprimiert die Datenbank nach unten. Meine sind von 530MB auf 74MB gestiegen, was anderen Postings hier entspricht. Daher ist die Speicherbereinigung oder das Schreiben von Schäden in diese Datenbank wahrscheinlich ein Schuldiger. Ich würde das Risiko eingehen, dass die wahrscheinlichere Annahme ein fehlerhafter Schreibvorgang ist, da mein CCC ihn nicht überschreiben konnte (und ich ihn auch nicht in ein anderes Verzeichnis kopieren konnte).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.