Dateiberechtigungen: chmod und chown
Jede Datei und jedes Verzeichnis unter Linux hat einen Besitzer, eine Gruppe und drei Berechtigungssätze: für den Besitzer, für die Gruppe und für alle anderen. chmod ändert die Berechtigungen (den Modus) und chown ändert den Besitzer und die Gruppe. ls -l zeigt beides an.
1Berechtigungen lesen
In der Ausgabe von ls -l bedeutet -rw-r--r-- eine reguläre Datei, die der Besitzer lesen und schreiben kann, während andere sie nur lesen können. r steht für read (lesen), w für write (schreiben) und x für execute (ausführen); bei einem Verzeichnis erlaubt x das Betreten.
2Numerische Modi
Jeder Satz ist eine Ziffer: Lesen ist 4, Schreiben 2 und Ausführen 1, addiert ergeben sie den Wert. 644 (rw-r--r--) ist typisch für Dateien, 755 (rwxr-xr-x) für Verzeichnisse und Programme und 600 (rw-------) für private Dateien wie SSH-Schlüssel.
3Besitzer ändern
sudo chown user:group file legt den Besitzer und die Gruppe fest. Mit -R funktionieren sowohl chmod als auch chown rekursiv durch einen Verzeichnisbaum.
So korrigieren Sie die Berechtigungen eines Web-Ordners
- Aktuellen Status prüfen:
ls -l /var/www/site - Besitzer festlegen:
sudo chown -R www-data:www-data /var/www/site - Verzeichnisse auf 755 setzen:
sudo find /var/www/site -type d -exec chmod 755 {} + - Dateien auf 644 setzen:
sudo find /var/www/site -type f -exec chmod 644 {} +
Vorsicht
- Verwenden Sie niemals
chmod -R 777: Dies erlaubt jedem Benutzer und Prozess, die Dateien zu ändern. - Ein rekursives chmod oder chown auf dem falschen Pfad, wie / oder
/usr, kann das System beschädigen.
Verwandte Artikel
- SSH-SchlüsselWie die Authentifizierung mit SSH-Schlüsseln funktioniert, wie man einen Schlüssel mit ssh-keygen erstellt, auf einem Server installiert und schützt.
- Große und alte Dateien mit find findenWie man mit find große oder alte Dateien unter Linux auflistet, sie sicher in der Vorschau anzeigt und nur das löscht, was man überprüft hat.
- /tmp und temporäre DateienWozu /tmp und /var/tmp dienen, wann Linux diese bereinigt und wie systemd-tmpfiles deren Altersgrenzen steuert.
Quellen
- chmod(1) Handbuchseite man7.org
- chown(1) Handbuchseite man7.org
Zuletzt geprüft: