Administration von Debian & Co im Textmodus – Teil I
Zugriffsrechte
Unter Linux besitzen jede Datei und jedes Verzeichnis Zugriffsrechte, die regeln, wer, wie und ob überhaupt zugreifen darf. Mit
$ ls -l
kann man sich die ausführliche Liste der Dateien und Verzeichnisse im aktuellen Verzeichnis (inklusive Zugriffsrechten) ausgeben lassen.
lrwxrwxrwx 1 peter gruppea 13 4. Apr 2012 todo.txt -> /backup/todo.txt -rw-r--r-- 1 paul gruppeb 65536 1. Jan 2012 Paul-schreibt-andere-lesen.txt -rw-rw-r-- 1 peter gemeinsamegruppe 128 18. Aug 2013 Gruppentext.txt -rw------- 1 paul paul 7889 21. Jul 23:26 Pauls-geheime-Gedanken.txt drwxr-xr-x 2 paul paul 4096 23. Jul 2012 Paul-schreibt-andere-lesen
Das Schema der Ausgabe ist folgendes:
<Typ><BBB><GGG><AAA> <H> <Benutzer> <Gruppe> <Größe> <Änderungszeit> <Datei-/Verzeichnisname>
Der Typbezeichnung, bei der -
für eine Datei, d
für ein Verzeichnis und l
für einen symbolischen Link steht, folgen 3 Blöcke mit je 3 Zeichen. Dabei steht der erste Block für die Rechte des Besitzers, der zweite für die Rechte der Gruppe und der letzte für alle anderen Benutzer. r
steht für das Leserecht, w
für das Schreib-/Änderungsrecht und x
für das Ausführungsrecht. Nach dem Rechte-Block folgt eine Angabe der Anzahl der Hardlinks auf die Datei (mind. 1) oder das Verzeichnis (mind. 2). Danach folgen der Name des Besitzers, dann der der Gruppe, die Dateigröße, dann der Zeitpunkt der letzten Änderung und abschließend der Name der Datei bzw. des Verzeichnisses oder Informationen über den symbolischen Link.
ls
steht dabei für »list« und ist damit wohl einer der am häufigsten genutzten Shell-Befehle. Der Parameter -l
sorgt dafür, dass so viele Informationen wie möglich über die aufgelisteten Dateien und Verzeichnisse ausgegeben werden. Ein zusätzliches -a
zeigt alle, also auch versteckte, Dateien an.
Besitzer und Gruppenzuordnung ändern
Man kann den Besitzer einer Datei bzw. eines Ordners sowie deren Gruppenzuordnung wie folgt ändern.
- Besitzer ändern:
# chown <Neuer Besitzer> <Datei-/Verzeichnisname>
- Gruppe ändern:
# chgrp <Neue Gruppe> <Datei-/Verzeichnisname>
- Besitzer und Gruppe ändern:
# chown <Neuer Besitzer>:<Neue Gruppe> <Datei-/Verzeichnisname>
Sollen bei den Verzeichnissen die Unterverzeichnisse und enthaltene Dateien mit eingeschlossen werden, so kommt noch der Parameter -R
hinzu.
Zugriffsrechte ändern
Die Zugriffsrechte für Besitzer, Gruppe und andere können hier jeweils als Zahl angegeben werden. Das Leserecht hat den Wert 4, das Schreib-/Änderungsrecht 2 und das Ausführen-Recht 1. Sollen mehrere Rechte vergeben werden, so werden die Werte einfach addiert (z.B. Lesen + Schreiben = 6). Das Ändern der Rechte geschieht mit
$ chmod <BGA> <Datei-/Verzeichnisname>
Zum Beispiel erlaubt
$ chmod 754 info.txt
dem Besitzer das Lesen, Schreiben und Ausführen, der Gruppe das Lesen und Ausführen und allen anderen das Lesen der Datei info.txt. Sollen hierbei Verzeichnisse, Unterverzeichnisse und enthaltene Dateien mit eingeschlossen werden, so kommt ebenfalls der Parameter -R
hinzu.