Zugriffsrechte ändern
Zugriffsrechte auf Dateien und Verzeichnissen kann man mit dem Kommando chmod erledigen. Als Parameter übergibt man dem Befehl eine Zahlenkombination, die Aufschluss über die Rechte des Besitzers, der Gruppe und Sonstiger Personen gibt.
Dabei Wird folgendes Schema eingehalten:
4 -> lesen 2 -> schreiben 1 -> ausführen
Zählt man die Zahlen zusammen, so kann man beliebige Kombinationen erreichen, z.B. 5 = 4 (lesen) + 1 (ausführen), heißt, die Datei kann nicht mehr verändert (geschrieben).
chmod 755 Dateiname
Ergibt also, dass Dateiname für den Besitzer les-,schreib-,ausführbar ist, für die Gruppe und restliche Personen nicht schreibbar.
Will man Dateien nicht ausführbar machen - normale Dateien müssen nicht ausführbar sein - so kann man
chmod 644 Dateiname
verwenden.
Will man das auf einen ganzen Verzeichnisbaum anwenden, so gibt es ein Probem. Verzeichnisse müssen ausführbar sein, um den Inhalt anzuzeigen. D.h. macht man ein Verzeichnis nicht ausführbar, so sind die darin enthaltenen Dateien und Verzeichnisse nicht erreichbar. Um das zu umgehen muss man (wenn nicht sowieso schon geschehen) den Verzeichnisbaum samt Inhalt ausführbar machen:
chmod -R 755 verzeichnis
Anschließend muss man noch sämtlichen Dateien des Verzeichnisbaums mit
find verzeichnis/ -type f -exec chmod 644 \{\} \;
die Ausführbarkeit entziehen. Find arbeitet automatisch rekursiv, sodass alle Unterverzeichnisse mit eingeschlossen sind.