Dauerhaftes Entfernen der sleepimage-Datei in /var/vm in macOS

Ich führe High Sierra aus und die große private/var/vm/sleepimageDatei hat mich gestört. Mein Computer hat 16 GB RAM, was bedeutet, dass sleepimage16 GB auf meiner Festplatte belegt sind. Ich habe Tutorials gelesen, wie man es entfernt, aber es funktioniert bei mir nicht. Ich habe versucht, sudo rm -R private/var/vm/sleepimagedas Terminal einzugeben, aber das Terminal antwortet rm: private/var/vm/sleepimage: No such file or directory. Was kann ich tun?

private/var/vm/sleepimageist dasselbe Verzeichnis wie ./private/var/vm/sleepimage, das auf ein Unterverzeichnis unter Ihrem aktuellen Verzeichnis verweist, aber Sie versuchen, eine Datei/einen Ordner unter zu löschen /. Wenn Sie dies nicht tun cd /, funktioniert dieser Befehl nicht. Oder Sie können einfach ein /vor dem Pfad hinzufügen:/private/var/vm/sleepimage

Antworten (2)

Diese Datei kann gelöscht werden - R ist nicht erforderlich, aber stellen Sie sicher, dass Sie den vollständigen Pfad haben:

 sudo rm /private/var/vm/sleepimage

Wenn Sie es "löschen", wird der Speicherplatz nicht freigegeben, bis der Kernel und andere Prozesse die Datei schließen, also starten Sie Ihren Mac neu. Die Image-Datei wird neu erstellt, wenn Sie das nächste Mal schlafen müssen. Wenn Sie also eine Festplatte mit dieser Datei zusammenhängend zugewiesen hatten, werden Sie die Dinge noch verschlimmern, wenn ihr nicht zusammenhängende Blöcke zugewiesen werden. SSD ist es egal.

Ich würde mich darauf konzentrieren, andere Dateien als diese langfristig zu bereinigen / zu verschieben.

$sudo rm /private/var/vm/sleepimage override rw------T root/wheel for /private/var/vm/sleepimage? y rm: /private/var/vm/sleepimage: Operation not permitted im Mojave

Die Informationen in dieser Antwort wurden von dieser Seite extrahiert .

Die sleepimage-Datei ist durch SIP geschützt, das vor dem Löschen deaktiviert werden muss. Darüber hinaus müssen Sie den Mechanismus deaktivieren, der die sleepimage-Datei erstellt, um zu verhindern, dass die Datei in Zukunft erstellt wird.

Deaktivieren Sie den Ruhezustand (der bei zukünftigen System-Upgrades/Updates zurückgesetzt werden kann:)

sudo pmset -a hibernatemode 0

Starten Sie Ihren Computer neu und halten Sie ihn gedrückt Cmd-R, um in den Wiederherstellungsmodus zu booten. Wenn das geladen ist, gehen Sie zu Dienstprogramme > Terminal und geben Sie Folgendes ein, um SIP zu deaktivieren:

csrutil disable
reboot

Wenn Ihr Computer wieder hochfährt, gehen Sie in das Terminal und entfernen Sie das Schlafbild. Diesmal klappt es. Sie müssen auch eine leere sleepimage-Datei erstellen und sie unschreibbar machen, da sonst ziemlich schnell die vollständige Datei zurückkommt.

sudo rm -f /private/var/vm/sleepimage
sudo touch /private/var/vm/sleepimage
sudo chflags uchg /private/var/vm/sleepimage

Starten Sie jetzt wieder in den Wiederherstellungsmodus und aktivieren Sie SIP erneut:

<s>csrutil enable</s>
reboot

Wenn Sie wieder in MacOS sind, gehen Sie ein letztes Mal in das Terminal und überprüfen Sie, ob das Schlafbild eine Größe von 0 Bytes hat:

ls -la /private/var/vm
Auf 10.13.4 und niedriger ist dies nicht erforderlich - die Sleep-Image-Datei ist nicht durch SIP geschützt. $ ls -lO /private/var/vm/sleepimage -rw------T 1 root wheel - 1073741824 May 26 19:29 /private/var/vm/sleepimageHier gibt es viele erstaunlich gute Informationen und die Möglichkeit, Berechtigungen für diese Datei zu ändern, aber ich kann sie jederzeit als normaler Administrator / sudomit vollständig aktiviertem SIP über viele Installationen von High Sierra hinweg löschen
Was passiert, wenn Sie das unveränderliche Benutzer-Flag auf 10.13 für die Sleep-Image-Datei gesetzt haben und ein anderes Skript die Energieverwaltungseinstellungen außer Kraft setzt? +1, um dies auf dem neuesten Stand zu halten!