|
|
Berechtigungen: chmod
Jede Datei hat Informationen darüber, ob sie
gelesen, geschrieben oder ausgeführt werden kann. Diese Rechte existieren
jeweils für den Eigentümer, die Gruppe und alle restlichen Benutzer.
Durch den Befehl
Die Buchstaben bedeuten bei Dateien:
[Die Rechte für Dateien]C|L
Recht & Bedeutung für Dateien
Die Ausgabe eines
-rwx--- 1 arnold users 13654 Jan 17 04:41 a.out drwxr-x-- 2 arnold users 4096 Mär 6 23:35 awk -rwxr-xr-x 1 arnold users 13856 Feb 8 10:48 copy -rw-r-r- 1 arnold users 175 Feb 8 10:48 copy.c drwxr-xr-x 2 arnold users 4096 Jan 13 12:37 dir -rw-rw-r- 1 arnold users 98 Apr 13 13:55 doppel.c -rwxr-xr-x 1 arnold users 13516 Feb 8 21:25 env -rw-r-r- 1 arnold users 165 Feb 8 21:25 env.c drwx--- 2 arnold users 4096 Feb 21 14:13 ipc drwxr-xr-x 2 arnold users 4096 Feb 13 13:51 make -rwxr-xr-x 1 arnold users 13489 Apr 11 21:34 moin -rw-r-r- 1 arnold users 60 Apr 13 13:55 moin.c Ein paar Dateien sollen herausgegriffen werden. Die Datei a.out erlaubt dem Besitzer, aber sonst niemandem, sie zu schreiben, zu lesen und auszuführen. Dagegen darf die Datei copy zusätzlich sowohl von der Gruppe users als auch vom Rest der Welt gelesen und gestartet, aber nicht beschrieben werden. Die Datei copy.c dagegen ist ein Quelltext mit ganz typischen Rechten für Datendateien. Der Besitzer darf sie lesen und schreiben, alle anderen dürfen sie nur lesen. Die Rechte werden als Oktalzahlen Oktalzahlen sind eine Sonderform der dualen Zahlendarstellung, in der 3 Bit eine Ziffer ergeben. Mit 3 Bit lassen sich die Zahlen von 0 bis 7 darstellen. dargestellt. Das heißt, dass jeweils eine rwx-Gruppe auf eine Ziffer abgebildet wird. So ergibt sich:
[Oktalkodierung der Dateizugriffsrechte]CCC|C|L
r & w & x & Kennzahl & Bedeutung
Eine Besonderheit ergibt sich für Verzeichnisse. Hier bedeutet das Fehlen(!) einer Berechtigung:
[Die Rechte für Verzeichnisse]C|L
Recht & Bedeutung für Verzeichnisse
Auf den ersten Blick erscheinen die Unterschiede zwischen den Datei- und den Verzeichnisrechten kompliziert. Wenn man sich ein Verzeichnis aber als eine Datei vorstellt, in der die Dateinamen abgelegt sind, ist der Zusammenhang mit den Schreib- und Leserechten logisch. Wenn man das Verzeichnis nicht lesen kann, kann man auch die Dateinamen nicht anzeigen. Darf das Verzeichnis nicht geschrieben werden, kann man auch keine Einträge hinzufügen oder löschen oder umbenennen.
Die Rechte von Dateien oder Verzeichnissen können mit dem Kommando
chmod 754 meinskript
Mit diesem Befehl erhält die Datei meinskript die Rechte
Auftritt unter fremder Lizenz: User-ID-Bit
Bei Programmen kann beim
chmod 4755 myprog
Die Datei myprog würde durch den Befehl
-rwsr-xr-x 1 arnold users 0 Dez 7 00:10 myprog Statt dem x steht also ein s bei den Benutzerrechten.
Buchstaben statt Zahlen
Wem das Rechnen in Dualzahlen gar nicht liegt, der hat auch die Möglichkeit,
Das Verändern eines Rechtes wird durch einen Ausdruck herbeigeführt, der sich
aus den in der Grafik gezeigten drei Balken zusammensetzt.
Das Gleichheitszeichen bewirkt ein Setzen, das Minuszeichen ein Entziehen und
das Pluszeichen das Hinzufügen eines Rechtes. Dass die Rechte mit r, w, und x
vergeben werden, ist wenig überraschend. Das s ist das User-ID-Bit. Beispiele für die Ausdrücke, die
statt der Oktalzahl beim
[Beispiele für chmod-Optionen]L|L
Term & Bedeutung
Der Nachteil der Buchstabenschreibweise ist, dass manche Kombination mit zwei Befehlen gegeben werden muss. Soll eine Datei so gesetzt werden, dass der Besitzer lesen und schreiben, alle anderen aber nur lesen sollen, dann ist 644 natürlich kürzer, als zuerst a=r und im zweiten Schritt u+w zu schreiben. Dafür ist es mit Ziffern recht umständlich, alle Ausführungsrechte der Dateien im aktuellen Verzeichnis zu entziehen und dabei die anderen Rechte nicht zu verändern.
Maske für die Rechte neuer Dateien: umask
Mit dem Befehl
umask 002 Mit diesem Befehl wird verhindert, dass neu erzeugte Dateien vom Rest der Benutzer verändert werden. Der Besitzer und die Gruppe erhalten dadurch das Schreibrecht.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|