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

Mac-Praxis: APFS-Laufwerke überprüfen per Kommandozeile

Apples auf Flash-Speicher optimiertes Laufwerksformat „APFS“ ist sieben Jahre alt, doch das Festplattendienstprogramm unterstützt bis heute noch nicht alle essenziellen Funktionen zum Verwalten von APFS-Volumes. Es kann zwar durchaus APFS-Container auf SSDs und Festplatten anlegen, deren Größe ändern sowie zusätzliche Laufwerks einrichten, doch die Wartungsfunktionen sind begrenzt – und vor allen Dingen fehleranfällig. Howard Oakley kann ein Lied davon singen; seit Jahren berichtet er über Bugs und Unzulänglichkeiten in Apples grafischer Laufwerksverwaltung. In einem Artikel zu Terminal-Kommandos gibt er nun Hilfe zur Selbsthilfe, indem er wichtige Kommandozeilenbefehle für APFS zusammenträgt.


Das Festplattendienstprogramm hat eine Entsprechung im Terminal: diskutil. Darin vereinen sich viele allgemeine und spezielle Werkzeuge. Eins davon ist die Auflistung aller Laufwerke. Dies ist essenziell, denn bevor Sie überhaupt loslegen, müssen Sie den internen Namen des Laufwerks oder Containers in Erfahrung bringen, der einer Sonderbehandlung bedarf. Der mit der Enter-Taste bestätigte Befehl

diskutil list

antwortet mit einer Tabelle, in der sämtliche aktuell angeschlossenen Speichermedien nebst Unterstrukturen aufgeführt sind. Über ein dahintergehängtes " external“ beschränkt man die Liste auf externe Laufwerke. Mittig steht der im Finder angezeigte Name, gefolgt von der Größe. Ganz rechts in dieser Darstellung erscheint der Identifier, der für alle folgenden Aktionen benötigt wird. Bei Volumes hat das Format „disk[zahl]s[zahl]“, zum Beispiel „disk2s3“ oder „disk7s1“. Hier geht Geduld vor Schnelligkeit: Prüfen Sie doppelt und dreifach, ob Sie das richtige Laufwerk herausgesucht haben. Wer den falschen erwischt, kann Daten unwiederbringlich verlieren oder den Mac außer Gefecht setzen. Wer sich also nicht hundertprozentig sicher ist, was er da tut, hält sich an die Devise: „nur gucken, nichts anfassen!“.

Über das Kommando „diskutil list“ erfahren Sie den Identifier des Objekts, das sie bearbeiten wollen.

Verschlüsseltes Laufwerk überprüfen
Die folgenden Beispiele gehen von einem externen verschlüsselten APFS-Volume mit dem Identifier „disk7s1“ aus. Passen Sie die Befehle so an, dass bei Ihnen die für Sie relevante Zahlen-Buchstabenkombination steht. Um Objekte zu überprüfen, deren Inhalte per FileVault verschlüsselt sind, muss man zunächst den Zugang gewähren. Gleichzeitig darf bei einer Überprüfung dieses Laufwerk nicht in macOS angemeldet (gemountet) sein. Dazu deaktiviert man sie zunächst mit dem Befehl

diskutil unmount /dev/disk7s1

Diesen (und jeden folgenden) Befehl geben Sie in der Kommandozeile ein. Nach dem Betätigen der Enter-Taste beginnt die Ausführung. Der mit „diskutil list“ herausgefundene Identifier wird fast immer mit vorangestelltem „/dev/“ verwendet. Den Zugang zu einem FileVault-Volume bewerkstelligt das Kommando

diskutil apfs unlockVolume /dev/disk7s1 -nomount

Danach müssen Sie das Kennwort für dieses Laufwerk in der Kommandozeile eingeben. Anschließend kann die Überprüfung beginnen. Dabei kommt ein anderes Programm zur Anwendung: „fsck_apfs“. Dieses erwartet ebenso einen Identifier, dem ein „/dev/“ vorangestellt wurde. Außerdem muss man sich für diesen Befehl als Administrator authentifizieren, was über ein vorangestelltes „sudo " gelingt. Danach müssen Sie Ihr Administrator-Kennwort blind eingeben – es erscheint nicht im Terminal. Dazu definieren Sie über einzelne Buchstaben (mit vorangestelltem Minus) noch spezielle Optionen. „-n“ überprüft beispielsweise nur, führt aber keine Reparaturen durch. Meldet er Fehler, sorgt das erneute Ausführen mit "-y" anstelle des "-n" dafür, dass die erkannten Probleme behoben werden.

Für das Volume „disk7s1“ sähe der Befehl dann so aus:

sudo fsck_apfs -n /dev/disk7s1

So sieht eine erfolgreiche Überprüfung eines APFS-Volumes im Terminal aus.

Zusatzoptionen für fsck_apfs
Option Beispiel Auswirkung
-n sudo fsck_apfs -n /dev/disk7s1 Überprüft, ohne Veränderungen durchzuführen
-y sudo fsck_apfs -y /dev/disk7s1 Überprüft und führt alle empfohlenen Reparaturen durch
-S sudo fsck_apfs -S /dev/disk7s1 Überprüft ohne Snapshots
-q sudo fsck_apfs -q /dev/disk7s1 Kurze Überprüfung auf valide superblocks und checkpoints

Große Tool-Auswahl über diskutil apfs
Das Werkzeug „diskutil“ verfügt über viele mächtige bis gefährliche Funktionen. Die für Apples Dateisystem vorgesehenen Tools beginnen alle mit „diskutil apfs “, gefolgt von einem sogenannten Sub-Verb. „diskutil apfs addVolume“ etwa erzeugt ein zusätzliches Laufwerk. Um mehr über sie zu erfahren, gibt man sie ohne abschließende Angabe des Ziel-Objekts ein. Dann erscheint im Terminal eine kurze Bedienungsanleitung – etwa so:

~ % diskutil apfs addVolume
Usage:  diskutil apfs addVolume <containerRefDisk> <fs> <name>
        [-passprompt | -passphrase <passphrase> | -stdinpassphrase]
        [-passphraseHint <passHint>]
        [-reserve <reserveSize>] [-quota <quotaSize>]
        [-role <roles>]
        [-group[With] | -sibling <apfsVolumeDisk>]
        [-nomount | -mountpoint <mountPoint>]
        where <containerRefDisk> = Container Reference DiskIdentifier
              <fs> = an APFS file system personality: e.g. "APFS", "APFSX"
              <name> = a volume name
              <passphrase> = optionally create an encrypted volume (disk user)
              <passHint> = some string that can be shown even while locked
              <reserveSize> = optional minimum guaranteed file data capacity
              <quotaSize> = optional maximum file data usage limit
              <roles> = "0" or one or more of B|R|V|I|T|S|D|E|X|H|C|Y
              <apfsVolumeDisk> = another APFS Volume in the same Container
              <mountPoint> = "your" mount point (root only) (dir must exist)
Add a new APFS Volume to an existing APFS Container. If you specify a
passphrase, it will be encrypted with the "disk" user and that passphrase.
Ownership of the affected disks is required.
Example:  diskutil apfs addVolume disk5 APFS Foo1
          diskutil apfs addVolume disk5 APFS FooSecure2 -passphrase hello
          diskutil apfs addVolume disk5 APFS Foo3 -quota 10g -reserve 5g
~ %

Tipps fürs Terminal
Die Kommandozeile wirkt anfangs etwas einschüchternd. Dagegen hilft nur Übung und ein paar Tricks: Gibt ein Terminalbefehl etwa eine Unmenge an Text aus, den Sie lieber als Datei hätten, führen Sie den Befehl erneut aus, mit einer kleinen Verlängerung: Über den Pfeil nach oben bringt man den letzten Befehl erneut in die Eingabezeile. Ein größer-Als-Zeichen, gefolgt von einem (bisher unvergebenen) Dateinamen in Pfadschreibweise, kommt dahinter. Ein Beispiel: Der Kommandozeilenbefehl

diskutil list > ~/Desktop/Laufwerke.txt

schreibt die Liste aktuell erkannter Laufwerke als Textdatei namens „Laufwerke.txt“ auf den Schreibtisch. Haben Sie sich beim Eingeben eines Befehls vertippt, können Sie bei gedrückter -Taste auf die Stelle klicken, um mit der Einfügemarke dorthin zu springen. Wollen Sie mehr über einen Kommandozeilenbefehl lernen, markieren Sie ihn mit einem Doppelklick und rufen mit dem Sekundärklick das Kontext-Menü auf. Darin wählen Sie „man-Seite öffnen“, um das scrollbare Handbuch dieses Befehls in einem Extrafenster lesen zu können. Doch Vorsicht – die darin enthaltenen Informationen sind bei „diskutil“ im Bezug auf APFS-Befehle nicht mehr auf dem aktuellen Stand, wie Oakley anmerkt.

Die man-Page ist die Bedienungsanleitung eines Kommandozeilenbefehls, das Terminal zeigt sie auf Wunsch in einem separaten Fenster an.

Kommentare

ralfch22.04.24 21:50
Danke für den Artikel, bin auch nicht so der Terminal-Typ und hab hier mit einer externen APFS-formatierten Festplatte Probleme. Im FPDP wollte ich sie neu formatieren, was aber immer wieder abgebrochen wird. Gibt es auch dafür einen Befehl?
+3
ralfch22.04.24 21:51
ralfch

ach ja war ne Time Machine Backup Platte
0
andreas_g
andreas_g23.04.24 07:28
Eine Frage an die Experten:
Gibt es eine Möglichkeit, ein Volume nachträglich von case-insensitive auf case-sensitive umzustellen?
0
MacMan_HH23.04.24 08:52
Gibt es eine Möglichkeit, ein Volume nachträglich von case-insensitive auf case-sensitive umzustellen?

Meines Wissens nach nur durch Neuformatierung. Aber ich lasse mich gerne eines besseren Belehren.
+2
X-Jo23.04.24 10:10
andreas_g
Eine Frage an die Experten:
Gibt es eine Möglichkeit, ein Volume nachträglich von case-insensitive auf case-sensitive umzustellen?
Hm, ich dachte, bei APFS gibt’s ausschließlich Groß-/Kleinschreibung?
0
macparc
macparc23.04.24 13:34
X-Jo
Hm, ich dachte, bei APFS gibt’s ausschließlich Groß-/Kleinschreibung?

Offensichtlich nicht …



Sofern man Adobe-Software einsetzt, sollte nicht die Formatierung mit Groß-/Kleinschreibung verwendet werden:
- https://helpx.adobe.com/creative-suite/kb/error-case-sensitive-drives-supported.html
- https://community.adobe.com/t5/download-install-discussions/adobe-cc-cannot-install-to-apfs-case-sensitive-drives-sonoma/td-p/14404952
+3
X-Jo23.04.24 14:52
Ah, OK, Danke. Da hätte ich auch selber gucken können …

Ob Adobe diese Restriktion noch bis ins nächste Jahrtausend retten kann?
+3
Jannemann24.04.24 12:45
Wieder mal ein sehr guter Artikel von immo_j , vielen Dank!
+1

Kommentieren

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