====== Zugriffsberechtigungen von Gruppen und Nutzern im AFS ======
Manchmal möchte man gerne einen "Speicher" (Verzeichnis) im AFS zur Verfügung stellen, auf welchen mehrere Nutzer einer Gruppe Zugriff haben. Im Nachfolgenden gibt es eine Kurzanleitung dazu, wie Sie ein solches Verzeichnis erstellen und Berechtigungen an einzelne Benutzer vergeben.
===== Das öffentliche Verzeichnis =====
__**Vorab:**__ Für jeden Benutzer existiert im AFS ein öffentliches Verzeichnis **(public)**, welches er selbst administrieren kann:\\
z.B.
''/afs/math.uni-hamburg.de/public/'' \\
z.B. ''/afs/math.uni-hamburg.de/public/fmnv165''
__**Hinweis:**__ Unter Windows muss bei den folgenden Pfaden jeder Vorwärtsschrägstrich '/' (Slash) durch einen Rückwärtsschrägstrich '\' (Backslash) ersetzt werden. Der Backslash am Anfang des Pfades muss verdoppelt werden.
Beispiel: ''/afs/math.uni-hamburg.de/public/fmnv165''\\
wird zu: ''\\afs\math.uni-hamburg.de\public\fmnv165''
Falls Sie das Public-Verzeichnis verwenden, müssten
Sie entweder für das Verzeichnis, oder für ein Unterverzeichnis davon
die Berechtigung für "system:anyuser" wegnehmen:
mkdir /afs/math.uni-hamburg.de/public/fmnv165/Freigabe
fs sa /afs/math.uni-hamburg.de/public/fmnv165/Freigabe system:anyuser none
Ansonsten hat jeder ("anyuser") Leserechte, unabhängig davon welche Rechte
für andere Leute Sie setzen. \\
''fs sa'' ist dabei die Kurzform für ''fs setacl''.
Zum Anlegen eines neuen Unterverzeichnisses in Ihrem public-Verzeichnis wechseln Sie zuerst mit folgenden Befehl in Ihr public-Verzeichnis: \\
''cd /afs/math.uni-hamburg.de/public/'' \\
Danach erstellen Sie ein neues Unterverzeichnis auf folgende Art und Weise: \\
''mkdir Freigabe''
===== ACL auflisten und verändern =====
Zum Auflisten der Berechtigung ("Access Control List" = ACL) für das aktuelle Verzeichnis geben Sie folgendes im Terminal ein: \\
''fs listacl .'' \\
Für andere Verzeichnisse geben Sie den Verzeichnisnamen bzw. den vollständigen Pfad inkl. Verzeichnisnamen an: \\
''fs listacl /afs/math.uni-hamburg.de/public/fmnv165/Freigabe/untertestverzeichnis'' \\
Anstelle von ''fs listacl'' können Sie auch die Kurzform ''fs la'' eingeben.
Die untenstehende Grafik zeigt Ihnen die Konsolenausgabe der Berechtigungen für das Unterverzeichnis "user2" nach Eingabe von fs la (fs listacl): \\
{{:de:user:afs:public-listaccess.png?nolink|fs listacl}}
''system:anyuser'', das ist jeder (weltweit!), darf Dateien lesen (**r**ead) und das Verzeichnis auflisten (**l**ist).
''user2'' darf darüber hinaus Dateien anlegen (**i**nsert), löschen (**d**elete), schreiben (**w**rite) und sperren (loc**k**) sowie Rechte verändern (**a**dministrate).
Um sich nicht merken zu müssen, was **r**, **l**, **i**, **d**, **w**, **k** und **a** bedeuten, gibt es Wörter für sinnvolle Kombinationen:
* none = (darf nichts)
* read = rl (Dateien lesen und Verzeichnisse auflisten)
* write = rlidwk (zusätzlich Dateien anlegen, löschen und schreiben)
* all = rlidwka (zusätzlich Rechte ändern)
===== Rechte im Verzeichnisbaum =====
Legt man mit ''mkdir'' ein Unterverzeichnis an, übernimmt dieses die Rechte, die für das darüber liegende Verzeichnis festgelegt sind. Ändert man im Nachhinein die Rechte des Oberverzwichnis, werden die Änderungen nicht für die Unterverzeichnisse übernommen. Um die Rechte eines ganzen Verzeichnisbaums vom aktuellen Verzeichnis an zu ändern kann man den ''find'' Befehl benutzen:\\
''find . -type d -exec fs sa {} NUTZER BERECHTIGUNG \;''
===== Gruppenberechtigungen =====
Wenn Verzeichnisbäume von wechselnden Benutzern genutzt werden, macht es unter Umständen Sinn, eine Gruppe anzulegen und dieser die Rechte zu geben.
*Anlegen einer Gruppe: ''pts creategroup :NAME''
*Der Name einer selbstangelegten Gruppe muss immer mit der eigenen Kennung gefolgt von einem Doppelounkt beginnen
*Hinzufügen zu einer Gruppe: ''pts adduser GRUPPENNAME''
*Setzen von Gruppenberechtigungen: ''fs sa PFAD GRUPPENNAME BERECHTIGUNG''