In diesem Tutorial zeige ich, wie der Ordner “Caches” (franz.: Versteck), der sich im Verzeichnis
~/Library
befindet, geleert werden kann.
Vorweg aber einige Anmerkungen: Verschiedene Programme schreiben Daten in den Cache-Ordner, um bestimmte Abläufe beschleunigen zu können. Im Ergebnis kann eine App so beispielsweise schneller starten oder manche Aufgaben schneller ausführen. In der Regel ist es nicht notwendig den Inhalt eines Cache-Ordners zu löschen. Etwas anderes gilt dann, wenn sich im Laufe der Zeit sehr viele Dateien in diesen Ordnern gesammelt haben (und man Speicherplatz freigeben möchte) oder wenn eine Anwendung nicht richtig funktioniert. In diesem Blogbeitrag geht es nur um den System-Cache von macOS, also um den Ordner ~/Library/Caches
. Darüber hinaus verwenden manche Anwendungen, z.B. Browser, eigene Cache-Verzeichnisse, die von der hier beschriebenen Vorgehensweise nicht umfasst sind.
Terminal verwenden
Das Programm Terminal ermöglicht den Zugriff auf eine Shell. Dort können Shell-Anweisungen ausgeführt werden, und die Shell-Anweisung für das Löschen des Inhalts des Ordners “Caches” lautet:
$ rm -Rf ~/Library/Caches/*
oder
$ rm -rf ~/Library/Caches/*
Das Tilde-Zeichen ~
kann mithilfe der Tastenkombination option
+ n
erzeugt werden.
Die Option -R
ermöglicht das Löschen von Verzeichnissen und den darin enthaltenen Dateien und Unterverzeichnissen. Die Option -r
ist lediglich das Äquivalent zu -R
.
Die Option -f
führt dazu, dass Dateien unabhängig von den Dateirechten ohne weitere Bestätigung gelöscht werden.
Weiter Informationen zum Befehl rm
erhält man über die Man-Pages:
$ man rm
Automator-Arbeitsablauf einrichten
Mit der Anwendung Automator lässt sich der vorab beschrieben Weg über das Terminal automatisieren. Dazu erstellt man sich mit dem Programm Automator einen Arbeitsablauf (Workflow). Dazu geht Ihr wie folgt vor:
- Das Programm “Automator” öffnen und „Neues Dokument“ auswählen.
- „Arbeitsablauf“ auswählen.
In dem sich öffnenden Fenster finden sich auf der linken Seite eine Bibliothek mit den Kategorien für zahlreiche Aktionen. Dort wählt Ihr nun „Dienstprogramme“ aus. In der Spalte rechts daneben werden jetzt die dazugehörigen Aktionen angezeigt. Sucht nach „Shell-Skript ausführen“ und zieht diese Aktion in die bisher leere Fläche rechts von den Aktionen. Zur Aktion „Shell-Skript ausführen“ kann jetzt obige Anweisung eingetragen werden:
$ rm -Rf ~/Library/Caches/*
Nachfolgende Abbildung zeigt den bisher zusammengestellten Arbeitsablauf.
Mit einem Klick auf
> Ablage > Sichern
kann man diesem Arbeitsablauf einen Namen geben und einen Speicherort auswählen. Der Arbeitsablauf ist damit fertig.
Wer möchte, kann diesen Arbeitsablauf noch um Mitteilungen erweitern. So befindet sich in der Kategorie „Dienstprogramme“ die Aktion „Bestätigung verlangen“. Wie der Name vermuten lässt, erscheint beim Ausführen dieser Aktion ein Fenster, das den Benutzer dazu auffordert, eine Aktion zu bestätigen.
Eine Aktion, wie in der nachfolgenden Abbildung gezeigt, fragt den Nutzer, ob der Ordner „Caches“ tatsächlich geleert werden soll.
Alle Dateien löschen
Die Shell-Anweisung
$ rm -Rf ~/Library/Caches/*
löscht nicht alle Ordner und Dateien im Verzeichnis „Caches“. Das hängt damit zusammen, dass manche Verzeichnisse – beispielsweise „CloudKit“ – besonders geschützt sind. Hier kommt man nur mit dem zusätzlichen Befehl sudo
weiter. In diesem Zusammenhang möchte ich aber eine Warnung aussprechen: Verwendet sudo
zusammen mit dem Befehl rm
nur dann, wenn Ihr wirklich wißt, was Ihr tut. Eine falsche Anwendung dieser Kombination von Befehlen kann Euer Dateisystem und damit Eure gesamte macOS-Installation komplett zerstören! Da Ihr nun gewarnt seid, hier die Anweisung, die mit dem eigenen Benutzerkennwort bestätigt werden muss:
$ sudo rm -Rf ~/Library/Caches/*
Und zum Abschluss noch ein Hinweis: Nach dem Löschen des Caches-Verzeichnisses kann es vorkommen, dass manche Anwendungen oder Systemeinstellungen neu eingerichtet werden müssen. Daher nochmals: Leert den Caches-Ordner nur dann, wenn es einen zwingenden Grund dafür gibt.