Wer öfters im Terminal auf dem Mac unterwegs ist, muss manchmal den Befehlen ein sudo
voranstellen, da diese mit Administrator aka Superuser Rechten ausgeführt werden müssen. sudo
verlangt dann die Eingabe des Administrator-Passworts. Auf Macs mit Touch ID ist es jedoch möglich, auf die Passworteingabe zu verzichten und stattdessen Touch ID zu verwenden. Dazu muss allerdings eine Einstellungsdatei bearbeitet werden, wobei es eine Vorgehensweise vor macOS Version 14 und eine ab Version 14 gibt.
Vor macOS 14 Somona
Vor macOS Version 14, auch Sonoma genannt, musste die Datei /etc/pam.d/sudo
um den Eintrag
auth sufficient pam_tid.so
ergänzt werden, indem die Datei mit
sudo nano /etc/pam.d/sudo
aufgerufen und editiert wird. Natürlich können auch andere Editoren verwendet werden, wobei das sudo
dann ebenfalls vorangestellt werden muss. In nano
navigiert man mit den Pfeiltasten nach unten und fügt die obige Zeile mit ⌘-V ein, natürlich nachdem man sie vorher mit ⌘-C kopiert hat. Danach sollte die Datei in nano so aussehen:
Um die Datei zu speichern, drückt man ⌃-X, gibt dann ‘j’ oder ‘y’ ein und bestätigt mit der Return-Taste. Die Änderungen sind im aktuellen Terminalfenster noch nicht aktiv. Um zu überprüfen, ob alles korrekt funktioniert, öffnet man einfach ein neues Terminalfenster und gibt zum Beispiel sudo ls
ein. Statt zur Eingabe eines Passworts aufgefordert zu werden, sollte nun ein Fenster erscheinen, das zur Authentifizierung mittels Fingerabdruck auffordert. Legt man einen Finger auf den Sensor, wird der Befehl ausgeführt.
Ab macOS 14 Somona
Das Problem mit der vorherigen Methode war, dass bei jedem macOS-Systemupdate die Änderungen in der Datei /etc/pam.d/sudo
rückgängig gemacht wurden. Mit der Einführung von macOS Sonoma hat Apple eine kleine, aber wichtige Änderung vorgenommen. Es ist nun möglich, eine Datei namens /etc/pam.d/sudo_local
zu erstellen, die bei Systemupdates unverändert bleibt. Apple hat zudem ein Template bereitgestellt, das den erforderlichen Befehl enthält. Hier sind die notwendigen Schritte:
- Kopieren des Templates in die neue Datei:
sudo cp /etc/pam.d/sudo_local.template /etc/pam.d/sudo_local
2. Bearbeiten der neuen Datei:
sudo nano /etc/pam.d/sudo_local
In der Datei muss das #
-Zeichen vor dem Wort ‘auth’ entfernt werden. Danach schließt man den Editor mit ⌃-X und bestätigt die Änderungen mit ‘j’ oder ‘y’, um zu speichern. Auch in diesem Fall sollte in einem neuen Terminal-Fenster bei der Eingabe von sudo
die Abfrage zur Verwendung der Touch ID erscheinen.
Ich hatte die alte Methode bereits vor einiger Zeit angewendet, jedoch nach mehreren System-Updates nicht wieder aktiviert. Kürzlich wurde ich durch eine Diskussion in einem Forumsthread von Carlo Zottmann auf einen Artikel von Dan Moren aufmerksam gemacht, der die neue Variante in macOS 14 beschreibt.
Ein letzter Tipp
Wem passiert es nicht gelegentlich, sei es im Terminal unter macOS oder Linux: Beim Eingeben eines Befehls, der Administratorrechte erfordert, vergisst man das sudo
. Hier ist ein nützlicher Tipp: Mit dem Befehl sudo !!
wird der zuletzt eingegebene Befehl erneut in die Befehlszeile eingefügt, diesmal jedoch mit einem vorangestellten sudo
. Drückt man anschließend Return, wird der Befehl mit den notwendigen Administratorrechten ausgeführt.
Wie immer freue ich mich über Lob, Kritik und Korrekturen in den Kommentaren.
Schreibe einen Kommentar