7 Jahre APFS: Vorteile und Eigenheiten von Apples modernem Dateisystem
Dokumente ohne DatenWeitere Eigenheiten von APFS betreffen die Struktur einzelner Dateien: Jede Datei hat einen internen Namen, genannt inode. Der inode-Identifikator bleibt stets gleich, wenn man das Dokument auf demselben Volume verschiebt. Weitere Informationen liegen in einem Datensegment namens "extended attributes" (xattr). Darin stehen dann Informationen wie Dateigröße, Codierung, verknüpftes Programm und so weiter. Anders als bei den Vorläufer-Dateisystemen, in denen solche Zusatzinformationen in einer (unter macOS) unsichtbaren Datei namens Ressource Fork lagern, verstaut APFS diese Informationen in einem separaten Bereich auf dem Volume. Windows-Nutzern gefällt das, denn nun haben sie keine zusätzlichen Dateien mit Punkt und Unterstrich am Namensanfang auf Speichermedien, die sie von Mac-Nutzern erhalten. Um die erweiterten Attribute einer Datei zu verarbeiten, hilft der Finder weiter: Der Befehl Ablage>Informationen" (
-I) öffnet ein Fenster, das die wichtigen Dateiattribute anzeigt; nicht wenige lassen sich hierüber auch anpassen. Zusätzlich gibt es wiederum ein Kommandozeilen-Tool namens "xattr". Deren Bedienung stellt sich jedoch als komplex heraus.
Für eine Datei erwartet APFS einen inode-Identifikator und einige Metadaten. Attribute und der tatsächliche Inhalt sind optional.
Dateiinhalt: optional (und wiederverwendbar)Normalerweise, wenn die Datei auf dem internen Laufwerk gespeichert ist, beinhaltet der Dokumenteintrag des APFS-Volumes einen Informationsteil namens "file extent". In dem steht beschrieben, wo auf dem Volume der Inhalt zu finden ist. Doch der kann auch einfach verschwinden, sofern die Datei auf einem Cloud-Speicher liegt. So spart macOS Platz auf dem lokalen Volume. Sofern eine Internetverbindung besteht, kehrt die Datei bei Bedarf wieder zurück. Dies gilt für iCloud Drive ebenso wie für Dateien anderer Cloud-Anbieter, etwa Dropbox. Die dafür notwendige Infrastruktur hat Apple unter dem Namen
FileProvider in macOS integriert. Ein weiterer Vorteil von File-Extents-Attributen: Mehrere Dokumente können auf denselben Speicherplatz verweisen. Dupliziert man eine Datei auf demselben Laufwerk, entsteht lediglich ein neuer Eintrag im Dateiverzeichnis, mit eigener inode und separaten xattrs. Unter "File extents" verweist dieses Dokument dann auf dieselben Speicherbereiche wie das Original. Solange die beiden Dateien inhaltsgleich bleiben, verbrauchen Dateikopien auf demselben Volume deshalb fast keinen Speicherplatz. Auf dieses Konzept sattelt dann die Schnappschuss-Struktur auf, mit dem macOS Dateiversionen und Time-Machine-Backups effizient verwaltet.
Einschränkungen von APFSDie strukturellen Vorteile des Apple File System setzen darauf, dass alle Speicherbereiche eines Volumes gleich zugreifbar sind. Dateiinhalte sind wild verteilt und randomisiert geschrieben, um die Flash-Speichermodule zu schonen. Das bedeutet allerdings im Umkehrschluss: APFS ist auf Festplatten bei einem Neustart nahezu unerträglich langsam. Eine weitere Eigenheit: Verwaiste Schnappschüsse können dafür sorgen, dass sich ein Volume scheinbar grundlos mit Dateien füllt – zum Glück kann man sie
von Hand entfernen. Noch eine Limitierung: Ein Dateiname darf nicht länger als 255 Zeichen sein. Das sind in etwa drei Sätze, also eine akzeptable Beschränkung selbst für gelegentliche Dokumentbezeichungssubstantivverkettungsausnahmeerscheinungen.
Jubiläumsfeier bei Eclectic Light CompanyDas siebenjährige Bestehen des Dateisystems nahm Mac-Blogger Howard Oakley zum Anlass für eine Reihe von Hintergrundartikeln zu Apples Dateisystem – obwohl er eigentlich iOS-Geräte scheut, und macOS erst ab dem 27. September 2017 offiziell auf APFS setzte. Wir haben die aktuellen Artikel in einer Tabelle zusammengetragen. Wer sich mit Details näher auseinandersetzen möchte, sei die Lektüre dieser ausführlichen Artikel ausdrücklich angeraten. Sie erklären ausführlich, wie die Verzeichnisstruktur von APFS funktioniert, und erläutern, wie man Oakleys kostenlose Tools zur Fehlerdiagnose einsetzen kann.