Wie kann ich einen Ordner erstellen, der:
- Jeder hat Lesezugriff auf den Inhalt des Ordners
- Nur der Eigentümer hat Schreib- / Löschzugriff auf den Inhalt
Wie kann ich einen Ordner erstellen, der:
Antworten:
Erstellen Sie einen Ordner und führen Sie ihn aus chmod
(ändern Sie den Dateimodus), um die Berechtigungen zu ändern.
mkdir folder
chmod 755 folder
Eigentlich ist dies die Standardeinstellung.
Ändern der Berechtigungen für den Inhalt eines bereits vorhandenen Ordners:
# Give write access to owner
chmod -R u+w folder
# Revoke write access of group and others
chmod -R go-w folder
# Give read access to everyone
chmod -R a+r folder
Oder zusammen in einem Befehl (thx @chrylis)
chmod -R u=rwx,g=rx,o=rx folder
u=rwx,g=rx,o=rx
ist etwas einfacher.
Geben Sie dem Eigentümer alle Berechtigungen und alle anderen nur Lese- und Ausführungsberechtigungen und nehmen Sie Schreibberechtigungen für alles darin weg:
sudo setfacl -Rm u::rwX,g::rX,o::rX /path/to/directory
sudo setfacl -Rdm u::rwX,g::rX,o::rX /path/to/directory
Der erste legt die Berechtigungen für vorhandene Objekte fest, und der zweite legt die Standardberechtigungen für alles fest, was im Verzeichnis erstellt wurde. rwX
gewährt alle Berechtigungen (X-Berechtigungen werden ausgeführt, wenn ein Verzeichnis vorhanden oder bereits ausführbar ist).
chmod u=rwx,g=rx,o=rx
?
chmod
steuert, wer Änderungen am Verzeichnis vornehmen darf . Sie können keine Dateien aus einem Verzeichnis löschen, auch wenn Sie sie besitzen, ohne Schreibzugriff.
Die Berechtigungsbits (in Oktal ), die Sie benötigen:
0705
Oder wenn Sie der Gruppe auch Lese- / Zugriffsberechtigungen erteilen möchten (dies ist sinnvoll, wenn Sie der Welt Lese- / Ausführungsberechtigungen erteilen):
0755
Das 0
vordere Feld zeigt an, dass kein SUID-, SGID- oder Sticky-Bit vorhanden ist. Sie können das fallen lassen, wenn Sie wollen.
In beschreibender Briefform:
rwxr-xr-x