Web Development
Oliver Thiele

Rechte für Ordner und Dateien setzen
Dateirechte in Linux-Systemen getrennt nach Ordnern und Dateien auch für sehr große Dateisysteme anpassen

Oft muss man Dateien und Ordner nach einem Kopieren mit unterschiedlichen Rechten versehen. Ein "chmod 755 * -R" ist zwar für Ordner sinnvoll, dann meistens für Dateien aber nicht (vor allem wenn der X-Bit-Hack für SSI verwendet wurde).

Die folgende Zeile setzt die Rechte rekursiv passend für den aktuellen und alle untergeordneten Ordner bzw. Dateien:

find -type d -print0 | xargs -0 chmod 755 && find -type f -print0 | xargs -0 chmod 644
 
# Empfohlen bei TYPO3:
find -type d -print0 | xargs -0 chmod 2770 && find -type f -print0 | xargs -0 chmod 0660
 
# Bei Mittwald:
find -type d -print0 | xargs -0 chmod 2775 && find -type f -print0 | xargs -0 chmod 0664

Erklärung zu xargs

Das Argument -print0 veranlasst GNU-find, den Dateinamen nicht wie üblich mit einem Linefeed-Zeichen, sondern mit einem Null-Byte abzuschließen. Dies ist das einzige Zeichen, das in einem Dateinamen nicht vorkommen kann. Es eignet sich deshalb ideal als Trennzeichen. Mit den komplementären Optionen -0 oder --null fasst xargs nur Null-Bytes als Trennzeichen auf.

© Copyright 2003-2017 Web Development Oliver Thiele. All rights reserved. - Diese Seite wurde am 16.04.2013 um 16:07 erstellt.
Letzte Änderung: 19.05.2017 13:09:34
shell,rechte,rechte setzen,rekursiv,find,ordner,dateien

oliver-thiele.de Trustcheck Seal