K.inc Tec Blog

Mein kleines EDV Logbuch

Tag: berechtigung

Datei- und Verzeichnisberechtigungen unter Linux ändern

Mit dem Kommando chmod werden Dateiberechtigungen vergeben.
Mit dem Kommando chown wird der Besitzer und die Gruppe definiert.

chmod 644 ./datei
chown benutzer:gruppe ./datei

Die 3 Zahlen, die man beim Befehl chmod angibt sind die Berechtigungsstufen für den Benutzer/Besitzer, die Gruppe und andere . Die Zahlen setzen sich zusammen aus den Berechtigungen Lesen, Schreiben und Ausführen.

1 = Ausführen
2 = Schreiben
4 = Lesen

Im oberen Beispiel wird die Berechtigung 644 vergeben. Das bedeutet also der Besitzer darf Lesen und Schreiben, die Gruppe und andere dürfen aber nur lesen. Die Berechtigung Ausführen bedeutet bei Verzeichnissen, dass die Verzeichnisse gelesen werden dürfen. Bei Dateien wird die Datei dadurch ausführbar gemacht. Letzteres sollte vorsichtig verwendet werden, gerade im Bezug auf Dateien, die über einen Webserver aufgerufen werden können.

Um Berechtigungen für alle Dateien und Unterverzeichnisse zu vergeben kann der Switch -R verwendet werden.

chmod -R 644 ./datei
chown -R benutzer:gruppe ./datei

find

Möchte man Berechtigungen nur auf bestimmte Dateitypen anwenden, also z.B. nur auf Dateien aber nicht auf Verzeichnisse oder umgekehrt, kann man das find Kommando verwenden.

Ausschließlich Verzeichnisse:

find /path/to/your/install/ -type d -exec chmod 755 {} \;

Ausschließlich Dateien:

find /path/to/your/install/ -type f -exec chmod 644 {} \;

Die Berechtigungen werden in diesem Fall recursiv vergeben, ausgehend von dem angegebenen Verzeichnis.

Windows Dateiberechtigungen per CMD übernehmen

Wie man Dateiberechtigungen über die Kommandozeile vergibt zeigt dieses kleine Beispiel.

icacls.exe "c:\Verzeichnis" /T /grant:r "BENUTZER":(OI)(CI)F

Erklärung:

  • c:\Verzeichnis = Zielordner, auf den der Befehl angewendet werden soll.
  • /T = Alle Unterverzeichnisse/Dateien
  • /grant:r = :r bedeutet, dass alle explizit gesetzten Berechtigungen durch diese Berechtigung ersetzt wird. Ohne :r werden die Berechtigungen den bisherigen hinzugefügt.
  • „Benutzer“ = Das Benutzer/Gruppenobjekt, z.B. „Domain\Benutzer1“ oder als lokaler Benutzer einfach „Benutzer1“
  • (OI)(CI) = Objektvererbung und Containervererbung
  • F = Vollzugriff

Für mehr Infos:

icacls.exe /?

© 2016 kinc.de