Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Apple File System: Freier Speicherplatz oftmals verwirrende Angabe

Das 1998 eingeführte und bis 2016 auf Apple-Geräten gängige Dateisystem HFS+ basiert auf dem 1985 vorgestellten "Hierarchical File System" (kurz HFS). Viele fortschrittliche Technologien wie Copy-On-Write oder eine dynamische Partitionierung waren mit HFS+ nicht realisierbar – und daher stellte Apple im Jahr 2016 ein neues Dateisystem namens "Apple File System" (kurz APFS) vor. Das neue Dateisystem unterstützt beispielsweise Snapshots, transparente Verschlüsselung, Datei-Clones und dynamische Partitionen wie auch einen höheren Schutz vor Datenverlust bei Systemabstürzen.


Bei traditionellen Dateisystemen ist die Angabe des verfügbaren und belegten Speichers eine triviale Angabe: Belegen beispielsweise die Dateien auf einer Partition mit 100 GB Kapazität 40 GB – daher sind noch 60 GB an Kapazität verfügbar. Ändert man einen einzelnen Buchstaben in einer Textdatei, ist danach die exakt gleiche Menge an freier Kapazität verfügbar – doch bei APFS ist dies je nach den Gegebenheiten anders. Eclecticlight.co listet einige Gründe auf, warum die Angabe des freien Speicherplatzes bei APFS so komplex und verwirrend ist.

Snapshots
APFS bringt eine Funktion mit, um ein "Schnappschuss" des aktuellen Zustandes einer kompletten Partition zu erstellen. Wie von Zauberhand ist das Erzeugen eines Snapshots nach wenigen Millisekunden abgeschlossen – und es kann jederzeit auf die Dateien im Snapshot zugegriffen werden. Wenn die Dateien auf der Partition verändert werden, liefern die Dateien im Snapshot immer noch den Inhalt zurück, den diese bei Erstellung des Snapshots hatten.

Was wie Magie klingt, ist aber nur eine sehr geschickte Verwaltung: Ist ein Snapshot vorhanden, wird beim Verändern der Datei der Inhalt nicht überschrieben, sondern die neuen Daten an eine andere Stelle geschrieben – und das Snapshot verweist weiterhin auf die alten Daten, die Partition jedoch an die neue Stelle.

Dies hat aber einen merkwürdigen Effekt: Das Verändern einer Datei verringert, sobald ein Snapshot vorhanden ist, die zur Verfügung stehende freie Speicherkapazität. In letzter Konsequenz bedeutet dies, dass ein Snapshot die Freigabe von belegten Speicherplatz komplett verhindert. Löscht der Nutzer eine Datei, und es ist ein Snapshot vorhanden, steigt der freie Speicherplatz nicht. Verändert er eine Datei, sinkt der freie Speicherplatz.

Ist die Apple-Backup-Lösung "Time Machine" aktiviert, legt diese nach dem eingestellten Zeitplan Snapshots an, um diese zu einem späteren Zeitpunkt auf die eingestellte Backup-Festplatte zu sichern. Dies bedeutet aber, dass im Normalfall ein Snapshot vorhanden ist – und somit erst nach Abschluss eines Backups (und der daraufhin erfolgten Löschung des Snapshots) überhaupt wieder Speicherplatz freigegeben werden kann.

Datei-Clones
Dupliziert man auf einem APFS-Volume eine Datei, sinkt der verfügbare Speicherplatz merkwürdigerweise nicht. Dies liegt daran, dass die Meta-Informationen der Datei zwar kopiert werden, nicht jedoch die Daten. Quell- wie auch Zieldatei verweisen auf dieselben Speicherblöcke auf der Festplatte. Ändert man jedoch die Quell- oder die Zieldatei, schreibt APFS die Daten an eine andere Stelle auf der Festplatte – und der verfügbare Speicherplatz sinkt.

Dies hat den merkwürdigen Effekt, dass selbst das Ändern einer Datei dazu führen kann, dass der verfügbare Speicherplatz sinkt – obwohl die Datei nicht größer geworden ist. Legt man zum Beispiel eine Datei mit 10 GB Größe an und kopiert diese, ändert dies nichts am verfügbaren Speicherplatz. Auf einer 100-GB-Partition zeigt der Finder 90 GB an verfügbarem Speicher an – obwohl zwei Dateien mit jeweils 10 GB Daten vorhanden sind.


Sparse-Dateien
Oftmals verwenden virtuelle Maschinen wie auch Datenbanken sogenannte Sparse-Dateien. Diese belegen nur einen Bruchteil der eigentlich zugewiesenen Größe und wachsen erst, wenn der Inhalt der Datei dies erfordert. So kann eine Sparse-Datei mit 10 GB Größe angelegt werden – ohne Daten belegt diese aber nur wenige Kilobyte. Werden nun 1 GB Daten an den Anfang der Datei geschrieben, belegt diese 1 GB.

Doch dieses Verhalten erfordert die Nutzung bestimmter Programmier-Bibliotheken – und verändert man diese Datei mit einem Programm, welches nicht mit Sparse-Dateien umgehen kann, wird plötzlich die gesamte Größe der Datei auf der Partition reserviert.

Container und Volumes
Früher hatten Partitionen einfach eine feste Größe – eine Festplatte mit 500 GB konnte in beispielsweise zwei 250-GB-Partitionen aufgeteilt werden. War die Speicherkapazität einer der Partitionen erschöpft, aber auf der anderen Partition noch Platz, war es nur mit großem Aufwand möglich, die Aufteilung anzupassen.

Bei APFS ist dies anders: Volumes auf einem Container teilen sich den freien Speicherplatz. Legt man auf einer Festplatte mit 500 GB einen Container mit zwei Volumes an, meldet jeder der zwei Volumes, über 500 GB Speicherplatz zu verfügen. Doch der Nutzer hat nicht auf magische Art und Weise eine Festplatte mit 1.000 GB erschaffen, denn die Volumes teilen sich intern den Speicher. Legt man eine 100-GB-Datei auf einem der Volumes an, melden beide Volumes plötzlich nur noch 400 GB freien Speicherplatz.

Time Machine oft der Grund für Speicherplatzprobleme
Was bedeutet dies nun für Nutzer, denen der Speicherplatz ausgegangen ist? Hat man einige größere Dateien gelöscht, und der Speicherplatz sinkt nicht, sind in den allermeisten Fällen Snapshots von Time Machine hierfür verantwortlich. Zuerst sollte man die Backup-Festplatte anschließen und Time Machine eine Sicherung durchführen lassen. Dies sorgt dafür, dass Time Machine nach erfolgreicher Sicherung die Snapshots entfernt – und der Speicherplatz freigegeben wird.

Doch Vorsicht: Nicht sofort nach Abschluss des Backups und Entfernung des Snapshots wird der Speicherplatz freigeben. Da diverse Prozesse involviert sind, kann es im Zweifelsfall sogar einige Minuten dauern, bis das Gerät den frei gewordenen Speicherplatz durch Löschung der Snapshots auch wirklich anzeigt.

Ist man der Bedienung des Terminals mächtig, kann man sich mittels des Befehls "tmutil" (Time-Machine-Utility) anzeigen lassen, welche Snapshots Time Machine aktuell auf dem Volume zwecks Sicherung vorhält.

Der Finder liefert aber auch zumindest einen Hinweis: Öffnet man das Informationsfenster zu einem Volume, zeigt der Finder die verfügbare Kapazität an – und in Klammern eine weitere Angabe mit dem Zusatz "löschbar"). Hierbei handelt es sich um durch Schnappschüsse belegten Platz, welcher bei Entfernung dieser freigegeben wird. Hauptsächlich sind dies Time-Machine-Snapshots, aber auch vorbereitete Betriebssystem-Updates können durch Snapshots Platz verbrauchen.

Kommentare

martzell30.12.22 13:16
Kann AFS mittlerweile Hardlinks, also kann man auf der externen Festplatte auf seine Time Machine Snapshots weiterhin einfach über das Dateisystem zugreifen?
-4
win00230.12.22 13:21
Danke für die ausführliche Erklärung.
+13
Mendel Kucharzeck
Mendel Kucharzeck30.12.22 13:23
win002
Wenn du tiefere Einblicke in APFS suchst, hier ist z.B. die Apple-Docu:
+4
Rosember30.12.22 13:27
Danke für die ausführliche Erklärung. Sie macht deutlich, wie vollkommen ungeeignet ein solches Dateisystem für den gewöhnlichen User ist, der nicht Speicherplatz ohne Grenzen zur Verfügung hat, sondern – gerade mit zunehmendem Alter seines Rechners und bei Apples horrenden Speicherpreisen für SSDs – eher auf eine Mangelverwaltung zusteuert, bei der auf eine direkte und unmittelbare Bekanntgabe des zur Verfügung stehenden Speicherplatzes angewiesen ist.
0
Frisco
Frisco30.12.22 13:28
Noch ein Tipp: Man kann sich im Festplattendienstprogramm die vorhandenen Snapshots anzeigen lassen und ggf. auch einzeln löschen.
+12
struffsky
struffsky30.12.22 13:33
Wer CCC installiert hat sollte ebenfalls checken ob damit Snapshots angelegt werden. Wird manchmal übersehen. CCC zeigt aber auch alle TimeMachine Snapshots unter Volumes an.
+3
Retrax30.12.22 13:44
Frisco
Noch ein Tipp: Man kann sich im Festplattendienstprogramm die vorhandenen Snapshots anzeigen lassen und ggf. auch einzeln löschen.
Wie geht das?
Danke!
0
Mac-Trek
Mac-Trek30.12.22 13:50
Hierzu mal eine blöde Frage: In der Regel kann TimeMachine stündlich auf meiner NAS sichern. Ich habe allerdings noch ein zweites Backup Ziel auf einer externen Festplatte hinterlegt, die ich nur einmal im Monat anschließe. Werden demzufolge für jedes der Backup Ziele eigene Snapshot angelegt und über den Monat "müllen" mir die Snapshots für die externe Festplatte die interne SSD voll?
Live long and *apple* . Mögliche Rechtschreibfehler und grammatikalische Entgleisungen sind Gratisgeschenke. Jegliches Nörgeln ist Energieverschwendung >:-]...
0
Mendel Kucharzeck
Mendel Kucharzeck30.12.22 13:56
Mac-Trek
TM hebt nicht ALLE Snapshots auf, sondern sortiert nach gewisser Zeit aus. In deinem Fall werden aber einige Snapshots vorhanden sein. Um zu checken, welche auf deinem Rechner sind, kannst du "tmutil" im Terminal benutzen. Laut den Kommentaren weiter oben geht es auch über das Festplatten-Dienstprogramm, den Weg kenne ich aber nicht.

Edit: Festplattendienstprogramm öffnen, "Darstellung" in der Menüleiste, dann "Snapshots einblenden".
+12
Marcel Bresink30.12.22 14:17
In dem Artikel sind leider mehrere Fehler.

Zum einen ergibt der Begriff "dynamische Partition" keinen Sinn. Das Wort Partition bedeutet "feste und restfreie Aufteilung einer Menge" und ist damit das exakte Gegenteil von "dynamisch". Eines der Hauptziele von APFS ist gerade, dass es keine Partitionen mehr gibt. Es gibt nur Volumes, die sich den Speicherplatz teilen.

Zum anderen ist die Strategie, nach der Time Machine vorgeht, falsch beschrieben. Wenn Time Machine eine Sicherung vornimmt, dann prüft es zunächst, ob die Voraussetzungen erfüllt sind, und wenn ja, wird ein APFS-Schnappschuss erstellt, um eine in sich konsistente Momentaufnahme aller Dateien zu haben. Dieser Schnappschuss wird sofort gesichert (nicht etwa "später" und auch nicht die Originaldaten, die sich während der Sicherung live verändern könnten).

Der APFS-Schnappschuss dieser Sicherung wird danach nicht gelöscht. Er wird als zweites Exemplar der Time Machine-Sicherung aufbewahrt und kann im Notfall (wenn das Sicherungsmedium nicht angeschlossen ist) als Quelle für eine Datenwiederherstellung dienen. Nur bei Speicherplatzmangel oder wenn der zugehörige Time Machine-Schnappschuss routinemäßig gelöscht wird (d.h. im Normalbetrieb nach 24 Stunden, falls es sich nicht um eine Wochensicherung handelt), wird gleichzeitig auch der jeweilige APFS-Schnappschuss gelöscht.

Nicht nur Time Machine legt APFS-Schnappschüsse an, das machen auch andere Datensicherungsprogramme und jedes macOS-Update. Jeder Benutzer kann das in bestimmten Grenzen auch manuell machen.
martzell
Kann AFS mittlerweile Hardlinks, also kann man auf der externen Festplatte auf seine Time Machine Snapshots weiterhin einfach über das Dateisystem zugreifen?

Jede Version von APFS kann Hardlinks. Was Du möglicherweise meinst, sind "Hardlinks auf Ordner". Die sind normalerweise in jedem Betriebssystem verboten, nicht etwa, weil das nicht ginge, sondern um zu verhindern, dass ein Programm die Ordnerstruktur zerstören kann. Ansonsten wäre es möglich, ungültige Kreisstrukturen in den Ordnern zu erzeugen, also "Ordner A enthält Ordner B enthält Ordner A".

Nur in älteren Versionen von Time Machine gab es für Time Machine-Zielmedien mit HFS+ eine Ausnahmeregel, bei der Hardlinks auf Ordner von macOS erlaubt wurden, um Speicherplatz zu sparen. Dieser Hack ist bei APFS-Zielmedien nicht mehr notwendig.

Mit dem Direktzugriff auf Sicherungen hat das allerdings überhaupt nichts zu tun.
+13
caMpi
caMpi30.12.22 14:47
Also genau wie bei Virtualisierung und Veeam. Nur eben anders
Keep IT simple, keep IT safe.
-1
TheGeneralist
TheGeneralist30.12.22 16:32
Danke Mendel Kucharzeck für den Artikel und Marcel Bresink für die Präzisierungen.

Die beschriebenen Innovationen im Apple File System finde ich sehr smart und gelungen.
Was ich allerdings gar nicht nachvollziehen kann, ist, dass diese als "komplex" oder "verwirrend" attributiert werden - nur weil es z.B. Situationen gibt, die in "älteren" File-Systemen anders (aber keineswegs effizienter!) ablaufen, wie z.B. dass der Speicherplatz einer duplizierten Datei erst bei Änderung eines der beiden Duplikate belegt wird, oder dass das Snapshot-Handling weitgehend automatisiert abläuft.
Aus meiner Sicht führt das APFS-Featureset in der Gesamtsicht aber doch eher dazu, dass das Dateisystem sich in ~99% der Fälle genau so verhält, wie es für mich als Nutzer am effizientesten und wünschenswertesten ist - die Fälle, in denen das Ganze mehr stört als nutzt, sind m.E. doch eher zu vernachlässigen. Gerade, da APFS doch - soweit mein Verständnis hier zutrifft - diese Features auch auf recht ausgeklügeltem Wege unter optimierter Nutzung der Ressourcen bereitstellt, ist es doch gerade für die effiziente Ausnutzung knapper Speicher-Ressourcen im Alltagsbetrieb weitaus besser geeignet als HFS+ oder andere vergleichbare Dateisysteme. Features wie die Optimierung auf SSD (oder ähnliche Technologien wie die Apple Silicon Architektur) sind dann noch das Tüpfelchen auf dem i.

Vielleicht sehe ich es auch etwas zu rosig, aber ich war vom ersten Artikel an, den ich - damals noch vor der Umstellung auf APFS als primäres Dateisystem - dazu gelesen habe, ein Fan von APFS.
Ja, Stabilitätsprobleme hat(te) es als vergleichsweise neues Dateisystem sicherlich auch erst mal - ich hatte nach dem Update meines iMac mit Fusion Drive auf APFS auch selbst erst mal Probleme mit dem Dateisystem und musste ihn letztlich neu aufsetzen, nicht unwahrscheinlich dass das mit APFS-Kinderkrankheiten zusammenhing. Aber mittlerweile sollte es doch gereift sein (denke ich zumindest ).

Fallbeispiel aus der Praxis: allein mit meiner externen USB-Festplatte, die 2 Volumes für Time Machine Backups verschiedener Macs sowie ein drittes Volume für iOS-Backups enthält, würde ich auf keinen Fall wieder auf Partitionen zurück wollen. Warum auch - dass für alle drei Volumes der gleiche freie Speicherplatz genannt wird, ist doch absolut intuitiv, unkompliziert und in jeder Hinsicht wünschenswert, wenn ich dagegen wie früher mit drei starren Partitionen arbeiten müsste, würde es ernsthaft "komplex", "verwirrend" und wenig effizient.
+7
MrChad30.12.22 16:54
Bei Cloud-Nutzung kommt eine weitere, mglw. verwirrende Eigenschaft noch dazu:
- Daten, die u.U. nur in der Cloud liegen, werden von diversen Plattenplatz-Anzeigen mit ihrer vollen Größe mitberechnet, ggf. sogar doppelt.

Im Extremfall könnte dadurch der rechnerisch ermittelte, virtuelle Plattenplatz sogar die gesamte physische Speicherkapazität überschreiten.

Weil es für OneDrive entsprechende Berichte gibt ("Hilfe! OneDrive verbraucht den ganzen Plattenplatz") hatte ich das neulich mit ein paar GByte-Dateien mal getestet. Bei Cloud-Dateien wurde regelmäßig ein viel zu hoher Verbrauch angezeigt.

Ich nehme an, dass es bei anderen Cloud-Systemen nicht großartig anders sein wird.
0
Deichkind30.12.22 17:10
Die Verwirrung tritt regelmäßig dann auf, wenn nicht unmittelbar die Menge des "freien" Speichers zunimmt, nachdem große Dateien gelöscht worden sind mit dem Ziel, den freien Speicherplatz zu vergrößern.
+3
Solaris
Solaris30.12.22 21:29
Ich kann verstehen, dass ein solches Dateisystem als "Overkill" für normale User betrachtet wird, für mich aber zeigen der Artikel und Marcel Bresinks Anmerkungen vielmehr, wie ausgeklügelt APFS ist. Ein solches Dateisystem hat wenig mit einem herkömmlichen wie HFS+ zu tun – ich meine zum Glück.

Durch die zahlreichen Funktionen, Speicherplatz bei entsprechendem Mangel freizugeben, und die im Artikel genannten "merkwürdigen" Gründe fällt auf, dass Apple gedanklich vom reinen "Du hast noch 67GB frei" weggekommen ist, da der verfügbare Platz – natürlich vor allem im Zusammenspiel mit sehr viel iCloud Storage – automatisiert verwaltet wird. Das wiederum scheint mir für Anfänger mehr geeignet als für Experten.
+3
ts
ts30.12.22 21:55
Bin nicht so sehr von APFS begeistert, weil nur Prüfsummen von Metadaten erstellt werden. Es kann nicht festgestellt werden, wenn sich die Nutzdaten aufgrund von Fehlern verändern. Time Machine überschreibt daher die korrekte Version im Backup durch die kaputte Version.

Ich sichere Daten daher tendenziell auf dem NAS mit Btrfs als Dateisystem, dabei werden auch die Nutzdaten durch Prüfsummen abgesichert.
+1
Rosember31.12.22 01:13
Solaris
Ich kann verstehen, dass ein solches Dateisystem als "Overkill" für normale User betrachtet wird.
Beispiel Systemupdate auf deinem Rechner mit 256 GB SSD. Es werden 15 GB gefordert. Das System hat noch 17 GB frei. - Das Update scheitert an Mangel an Speicherplatz, es fehlen angeblich 3,3 GB. Du gibst 4 GB frei, indem Du ein paar Spiele löschst. Der freie Speicher ändert sich nicht. - ... - Am Ende hast du das viermal durchlaufen und insgesamt 20 GB an Daten gelöscht (du führst eine Liste auf Papier, was zurückkopiert werden muss, und möchtest deinen Rechner am liebsten in die Luft sprengen).

Nach dem Update hast du sage und schreibe 43 GB freien Festplattenspeicher und darfst dich noch einen halben Tag mit zurückkopieren beschäftigen. Dass du das überhaupt machst, ist deinem Verständnis für moderne File-Systeme und Betriebssystem-Updates zu verdanken. 90+ % aller User fragen sich allerdings: F..., was soll der Sch...? Wofür brauche ich ein Update?

Und das war es bestimmt, was Apple mit diesem File System erreichen wollte ...
+7
Retrax31.12.22 07:58
Mendel Kucharzeck
Edit: Festplattendienstprogramm öffnen, "Darstellung" in der Menüleiste, dann "Snapshots einblenden".
Bei mir erscheint da nur:
- Nur Volumes anzeigen
- Alle Geräte einblenden
SSD ist APFS formatiert.

Liegt das an der älteren FDP-Version bei macOS Catalina?
+2
8.6
8.601.01.23 09:41
Seltsam. Musste gestern zufällig ne neue SD Karte formatieren.
Auf dem MB Air 2020 (13.1) wurde mir vom Festplattendienstprogramm lediglich FAT und Mac OS Extended (Journaled, Groß-/Kleinschreibung) angeboten.
0
beat
beat07.01.23 21:04
Rosember
Solaris
Ich kann verstehen, dass ein solches Dateisystem als "Overkill" für normale User betrachtet wird.
Beispiel Systemupdate auf deinem Rechner mit 256 GB SSD. Es werden 15 GB gefordert. Das System hat noch 17 GB frei. - Das Update scheitert an Mangel an Speicherplatz, es fehlen angeblich 3,3 GB. Du gibst 4 GB frei, indem Du ein paar Spiele löschst. Der freie Speicher ändert sich nicht. - ... - Am Ende hast du das viermal durchlaufen und insgesamt 20 GB an Daten gelöscht (du führst eine Liste auf Papier, was zurückkopiert werden muss, und möchtest deinen Rechner am liebsten in die Luft sprengen).

Nach dem Update hast du sage und schreibe 43 GB freien Festplattenspeicher und darfst dich noch einen halben Tag mit zurückkopieren beschäftigen. Dass du das überhaupt machst, ist deinem Verständnis für moderne File-Systeme und Betriebssystem-Updates zu verdanken. 90+ % aller User fragen sich allerdings: F..., was soll der Sch...? Wofür brauche ich ein Update?

Und das war es bestimmt, was Apple mit diesem File System erreichen wollte ...

Auch meine Erfahrung - sehr mühsam für Systemupgrades…
Glaube nicht alles, was im Internet geschrieben wird, bloss weil da ein Name und ein Zitat stehen (Abraham Lincoln)
+2

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.