Apple File System

Was ich im letzten Beitrag nicht erwähnt habe, ist auch gleich für mich die größte und aufregenden Neuerung in Sachen macOS von Apple. Auf der letzte WWDC gab es nämlich eine Präsentation über ein neues Dateisystem, mit welchem Apple das nun 30 Jahre alte HFS ablösen will. So wurde auch mit den letzten Betas im Sommer und dem anschließen Major-Release von Sierra eine Betaversion des neuen APFS (Apple Filesystem) – erstmal zielgerichtet für Entwickler – veröffentlicht, was auch jeden anderen Nutzer wie mich einlädt, mal ein wenig damit herum zu spielen. Deswegen lassen sich Image-Sparsefiles und Datenträger auch erstmal nur unter der Konsole und noch nicht über das grafische Festplattendienstprogramm erstellen und bearbeiten. Die Integration im Finder ist stattdessen aber bereits vorhanden.
Die finale Version, die auch für den alltäglichen Produktiveinsatz zur Verfügung sein wird, ist für die kommende macOS-Version im Herbst 2017 geplant. Als Features sind folgende zu nennen:

  • das Klonen von Dateien und Ordnern, ohne dass sie neu geschrieben werden
  • Snapshots
  • APFS-Laufwerke können dynamisch in der Größe verändert werden, ohne dass das Laufwerk neu partitioniert zu werden braucht
  • „Space Sharing“ erlaubt mehreren logischen Laufwerken, den Speicherplatz desselben physikalischen Laufwerks gemeinsam zu nutzen
  • Verschlüsselung sowohl auf Dateisystemebene sowie Dateiweise bzw. der Metadaten
  • „Atomic Safe-Save“ führt Umbenennungen in einer einzelnen Transaktion so aus, dass aus Nutzerperspektive eine Operation entweder vollständig durchgeführt wurde oder gar nicht geschieht

Demgegenüber unterstützt APFS derzeit noch kein Startlaufwerk, keine Time-Machine-Sicherungen, kein FileVault sowie kein Fusion Drive.

Dennoch habe ich wie in Apples Support-Dokument mal ein 1 Gigabyte großes Sparse-Image erstellt:

hdiutil create -fs APFS -size 1GB apfs-test.sparseimage

Im zweiten Fall wollte ich mal einen ganzen USB-Stick mit APFS formatieren. Wichtig dabei ist, dass das Medium mit GPT nach dem GUID-Schema formatiert wird. MBR wird für APFS nicht mehr zugelassen.
In meinem Beispiel hat der USB-Stick die Gerätekennung disk2.:

sommteck:~ franky$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *250.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Simba                   249.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            Simba                  +248.8 GB   disk1
                                 Logical Volume on disk0s2
                                 D2BDDC9A-78E4-490C-808F-282E2BB8623A
                                 Unlocked Encrypted

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *16.1 GB    disk2
   1:                  Apple_HFS Stick                   16.1 GB    disk2s1

Mit folgendem Befehl wird nun das Gerät formatiert. Mit der 1 wird angegeben, dass eine Partition angelegt wird.:

diskutil partitionDisk disk2 1 GPT apfs Stick-APFS 100M

Als Dateisystem wird apfs angegeben. Als Volumenamen habe ich Stick-APFS gesetzt. Was man für einen Wert für die Größe und als Suffix angibt (hier die 100M) ist in diesem Beispiel erstmal egal, da diskutil im Normalfall das Ende der letzten Partion ans Ende des Geräts setzt. In diesem Fall ist die Erste auch gleich die Letzte.

Links:
Apple File System Guide

Ein Gedanke zu „Apple File System

  1. It also avoids having to write the change twice, as happens with an HFS+ journaled file system, where changes are written first to the journal and then to the catalog file. In its first generation, Apple File System does not provide checksums for user data, but does for metadata integrity.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.