Wie bei anderen verbreiteten Betriebssystemen ermöglicht macOS die Steuerung des Dateizugriffs durch ein differenziertes System von Dateiberechtigungen. Diese können entweder über die Finder-App oder mit dem Befehl chmod
im Terminal angepasst werden. Hier wird erläutert, wie das funktioniert.
Anpassen von Dateiberechtigungen in macOS über den Finder
Um die Zugriffsrechte einer Datei auf dem Mac ohne den Einsatz des Terminals zu ändern, ist die Finder-App die richtige Wahl.
Den Finder erreicht man über das Dock am unteren Bildschirmrand. Das Symbol ist das bekannte, lächelnde Happy Mac-Logo.
In einem Finder-Fenster kann man die Berechtigungen einsehen und bearbeiten, indem man mit der rechten Maustaste auf eine Datei oder einen Ordner klickt und „Informationen“ auswählt.
Im sich öffnenden „Info“-Fenster werden detaillierte Informationen zur Datei oder zum Ordner angezeigt. Um die Dateiberechtigungen anzupassen, klicken Sie auf den Pfeil neben „Freigabe & Berechtigungen“.
Daraufhin wird eine Liste von Benutzerkonten und Gruppen auf dem Mac angezeigt, zusammen mit den jeweiligen Zugriffsrechten unter der Kategorie „Privileg“.
Sollte das gewünschte Konto oder die Benutzergruppe nicht in der Liste auftauchen, klickt man auf das Pluszeichen (+) unten im Fenster.
Im Auswahlfenster kann der Benutzer oder die Gruppe ausgewählt und über die Schaltfläche „Auswählen“ zur Liste hinzugefügt werden.
Die Zugriffsrechte sind selbsterklärend. Benutzer mit „Nur Lesen“-Zugriff können Dateien zwar ansehen, aber nicht verändern. Bei der Einstellung „Lesen & Schreiben“ sind beide Aktionen erlaubt.
Um die Berechtigung für einen Benutzer oder eine Gruppe zu ändern, klickt man auf den Pfeil neben dem aktuellen Zugriffsniveau und wählt dann „Nur Lesen“ oder „Lesen & Schreiben“ aus der Liste.
Die Änderungen werden sofort wirksam. Das „Info“-Fenster kann danach geschlossen werden.
Anpassen von Dateiberechtigungen in macOS über das Terminal
Wer bereits mit dem Befehl chmod
unter Linux gearbeitet hat, kennt dessen Leistungsfähigkeit. Mit diesem Terminalbefehl lassen sich die Zugriffsrechte für Dateien und Verzeichnisse in Bezug auf Lesen, Schreiben und Ausführen festlegen.
Der Befehl chmod
ist nicht ausschließlich auf Linux beschränkt. Er stammt, wie viele andere Linux-Terminalbefehle, aus den Unix-Systemen der 1970er Jahre. macOS und Linux teilen dieses Erbe, daher ist chmod
auch unter macOS verfügbar.
Um chmod
zu verwenden, öffnet man ein Terminalfenster. Dies ist möglich, indem man im Dock auf das Launchpad-Symbol klickt und dort unter „Andere“ die Option „Terminal“ auswählt.
Alternativ kann man die integrierte Spotlight-Suche von Apple verwenden, um das Terminal zu starten.
Aktuelle Dateiberechtigungen einsehen
Um die aktuellen Berechtigungen einer Datei zu betrachten, gibt man folgendes ein:
ls -l datei.txt
Ersetzen Sie „datei.txt“ mit dem gewünschten Dateinamen. Dies zeigt die Zugriffsrechte für alle Benutzer sowie erweiterte Attribute für macOS an.
Die Dateiberechtigungen sind in den ersten 11 Zeichen der Ausgabe des ls
-Befehls dargestellt. Das erste Zeichen, ein Minuszeichen (-), zeigt an, dass es sich um eine Datei handelt. Bei Ordnern wird dies durch den Buchstaben (d) ersetzt.
Die nächsten neun Zeichen sind in Dreiergruppen unterteilt.
Die erste Gruppe zeigt die Zugriffsrechte für den Besitzer (1) der Datei/des Ordners, die mittlere Gruppe die Gruppenberechtigungen (2) und die letzten drei die Berechtigungen für alle anderen Benutzer (3).
Man sieht hier Buchstaben wie r (lesen), w (schreiben) und x (ausführen). Diese sind immer in dieser Reihenfolge angeordnet, z.B.:
---
würde bedeuten, dass kein Lese- oder Schreibzugriff besteht und die Datei nicht ausführbar ist.r--
würde bedeuten, dass die Datei gelesen, aber nicht beschrieben werden kann und die Datei nicht ausführbar ist.rw-
würde bedeuten, dass die Datei gelesen und beschrieben werden kann, die Datei jedoch nicht ausführbar ist.rx-
würde bedeuten, dass die Datei gelesen und ausgeführt, aber nicht beschrieben werden kann.rwx
würde bedeuten, dass die Datei gelesen, geschrieben und ausgeführt werden kann.
Wenn das letzte Zeichen ein At-Zeichen (@) ist, bedeutet dies, dass die Datei oder der Ordner erweiterte Attribute hinsichtlich der Sicherheit hat. Diese erlauben bestimmten Apps (wie dem Finder) dauerhaften Dateizugriff.
Dies hängt mit neuen Sicherheitsfunktionen zusammen, die in macOS Catalina eingeführt wurden, obwohl Dateizugriffskontrolllisten (ACLs) schon seit macOS X 10.4 Tiger (2005) Bestandteil von macOS sind.
Dateiberechtigungen anpassen
Um die Dateiberechtigungen zu setzen, verwendet man den Befehl chmod
im Terminal. Um die existierenden Berechtigungen aufzuheben und Lese- und Schreibzugriff für den Besitzer, sowie Lesezugriff für alle anderen zu gewähren, gibt man folgendes ein:
chmod u=rw,g=r,o=r datei.txt
Die Flag u
setzt die Berechtigungen für den Besitzer, g
für die Benutzergruppe und o
für alle anderen Benutzer. Das Gleichheitszeichen (=) entfernt alle vorherigen Berechtigungen für diese Kategorie.
In diesem Fall hat der Besitzer Lese- und Schreibzugriff, während Benutzergruppe und andere Benutzer nur Lesezugriff erhalten.
Man kann das Pluszeichen (+) nutzen, um den Zugriff für eine Benutzerkategorie hinzuzufügen. Z.B.:
chmod o+rw datei.txt
Dies gewährt allen anderen Benutzern Lese- und Schreibzugriff auf die Datei.
Umgekehrt kann der Zugriff mit dem Minuszeichen (-) entfernt werden, z.B.:
chmod o-rw datei.txt
Dies entzieht allen anderen Benutzern Lese- und Schreibzugriff auf die Datei.
Alternativ kann man das Flag a
nutzen, um Benutzerberechtigungen für alle Benutzer zu entfernen, hinzuzufügen oder zu verändern. Z.B.:
chmod a+rwx datei.txt
Dies würde allen Benutzern und Benutzergruppen Lese-, Schreib- und Ausführungsrechte für die Datei geben.
Mit großer Macht kommt große Verantwortung, und es ist unbestreitbar, dass der Befehl chmod
ein mächtiges Werkzeug ist, um Dateiberechtigungen auf dem Mac zu verändern. Man kann die Buchstaben (rwx
) durch eine Kombination von bis zu drei (oder vier) oktalen Zahlen ersetzen, z.B. 777
für Lesen, Schreiben und Ausführen.
Für mehr Informationen kann man man chmod
im Terminal eingeben, um eine vollständige Übersicht über die verfügbaren Flags und Einstellungen zu erhalten.