Laufwerke auf der Kommandozeile ein- und aushängen

Natürlich ist es am einfachsten, die Laufwerke über den Finder oder durch ziehen des Icons auf den Papierkorb auszuhängen. Manchmal möchte man dies aber auch von der Kommandozeile aus tun, z.B. wenn man in einem anderen Raum sitzt und per ssh eingeloggt ist oder das aushängen per Finder nicht klappen will.

Dazu lasse ich mir alle Laufwerke am Mac anzeigen:

diskutil list

Das sieht dann bei mir z.B. so aus:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *320.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            319.2 GB   disk0s2
   3:                 Apple_Boot Macintosh HD            650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.1 GB     disk1
   1:                 DOS_FAT_32 USB-Stick               8.1 GB     disk1s1

/dev/disk0 ist dabei in der Regel die interne Festplatte, alle anderen sind Wechseldatenträger wie USB-Sticks, CDs, DVDs, externe Festplatten, etc.

Unter dem Gerätenamen folgen die auf dem jeweiligen Gerät angelegten Partitionen, wobei 0 eigentlich keine Partition ist sondern der Bezeichner der verwendeten Partitionstabelle und den Gesamtspeicherplatz des Gerätes anzeigt. In meinem Beispiel hat der USB-Stick eine Partition, die mit Usb-Stick bennannt ist und ein Fat32-Dateisystem beinhaltet. Diese möchte ich nun auswerfen.

Dazu verwende ich mit dem Befehl diskutil unmount und den Paritionsbezeichner, der sich aus dem Gerätenamen und der Paritionsnummer zusammensetzt:

diskutil unmount /dev/disk1s1

Nach erfogreichem auswerfen wird mir das von diskutil bestätigt:

Volume USB-Stick on disk1s1 unmounted

Falls noch ein Programm auf das Gerät zugreift, wird das ebenfalls von diskutil angezeigt:

Volume USB-Stick on disk1s1 failed to unmount: 'Unmount disallowed by CleanMyDrive'

Falls das nicht ausreicht kann man noch mit folgendem Befehl sehen welche Programme auf das Gerät zugreifen. Diese kann man dann beenden und erneut auswerfen.

lsof | grep /Volumes/USB-Stick
zsh       13526 username  cwd      DIR                1,5      4096       2 /Volumes/USB-Stick

In diesem Fall ist es das Programm zsh, meine Shell mit der ich noch in dem Verzeichnis war.

Natürlich kann man ein Laufwerk mit diskutil auch wieder einhägen:

diskutil mount /dev/disk1s1    
Volume USB-Stick on /dev/disk1s1 mounted