Der aktuelle Linux-Kernel:
Stabil: 6.12.4
Longterm: 6.6.65
Longterm 5.x: 5.15.173
Longterm 4.x: 4.19.325 (EOL)
LINUX-Infopage

Was ist LINUX?
Distributionen
Impressum
Datenschutz

Informationen

Einführung
Berichte
Befehle
Begriffe

Anwendungen

Multimedia
Browser
Allgemein

News

News-Archiv



Dateisystem-Berechtigungen

LINUX-Infopage > Berichte: Dateisystem-Berechtigungen

Berechtigungen des Dateisystems

1. Allgemeines

Unter Linux ist jede Datei und jedes Verzeichnis mit bestimmten Berechtigungen versehen. Man kann sich die Berechtigungen ansehen, indem man an der Konsole z.B. den Befehl ls -l eingibt. Berechtigungen werden ferner auch von Dateimanagern angezeigt und können oft auch bei grafischen Desktop-Oberflächen z.B. per Rechtsklick->Eigenschaften angezeigt und verändert werden.

2. Beispiel

Gibt man an der Linux-Shell den Befehl ls -l ein, so erhält man in etwa die folgende Ausgabe:

chme@xpert:~/dokumente$ ls -l
insgesamt 3
-rw-r--r--    1 chme     chme           35 2003-10-28 19:05 berechtigungen.txt
-rw-r--r--    1 chme     chme           27 2003-10-28 19:05 dokument1.txt
drwx------    2 chme     chme         1024 2003-10-28 19:05 verzeichnis
chme@xpert:~/dokumente$ 
Wie man hier sehen kann, stehen die Berechtigungen in der linken Spalte. In der dritten und vierten Spalte steht jeweils der Benutzername und der Name der Gruppe, der diese Datei gehört.

3. Berechtigungen von Dateien

Im Beispiel oben handelt es sich bei den ersten beiden Einträgen um Dateien. Eine Bereichtigung, bei der jeder das Recht zu lesen, zu schreiben und zum Ausführen hat, sieht folgendermaßen aus:

-rwxrwxrwx
Die Berechtigung besteht aus drei Paaren von rwx. Jedes r steht für lesbar, jedes w steht für Schreibzugriff und jedes x steht für ausführbar.

Die erste Kombination von rwx steht für den Benutzer, dem diese Datei gehört (ablesbar in der dritten Spalte der Ausgabe von ls -l). Im Falle von rwx kann der Benutzer die Datei lesen, sie verändern und ausführen. Fehlt hier das x, so ist die Datei auch nicht ausführbar, wie dies bei den meisten Datendateien der Fall ist.

Die zweite rwx-Kombination bezeichnet die Berechtigungen für Benutzer, welche der bestimmten Gruppe angehören (vierte Spalte der Ausgabe von ls -l). So kann man hier z.B. mit r-- festlegen, dass Benutzer, welche der besagten Gruppe angehören, eine Datei nur lesen, aber nicht verändern können.

Die dritte Kombination von rwx steht für die Berechtigungen, welche alle anderen Benutzer haben. Wenn man nicht möchte, dass andere Benutzer die eigenen Dokumente lesen können, so gibt man hier z.B. --- an.

4. Berechtigungen von Verzeichnissen

Bei Verzeichnissen sieht eine Berechtigung so aus:

drwxrwxrwx
Hier beschreibt das erste Zeichen d, dass es sich um ein Verzeichnis (Directory) handelt. Die Berechtigungen sind in etwa wie bei den Dateien, allerdings bedeutet das x hier nicht ausführbar, sondern eher 'begehbar', d.h., es legt fest, ob bestimmte Benutzer in das Verzeichnis wechseln dürfen oder nicht.

5. Ändern von Berechtigungen

Um die Berechtigungen von Dateien bzw. Verzeichnissen zu ändern, gibt es den Befehl chmod:

chmod a+r test.txt
Dieser Befehl setzt die Berechtigung für Lese-Zugriff für alle, d.h. für den Eigentümer, die Gruppe und alle anderen.

Der Aufbau des Befehls chmod sieht etwa so aus:

chmod A?B dateiname
Hier werden die Werte für A, ? und B folgendermaßen ersetzt:
Zeichen Bedeutung
A u (Benutzer), g (Gruppe), o (andere) oder a (alle)
? + (Rechte hinzufügen) oder - (Rechte entfernen)
B r (Lesezugriff), w (Schreibzugriff) oder x (ausführbar/begehbar)

Alternativ hierzu können Berechtigungen auch folgendermaßen gesetzt werden:

chmod ABC dateiname
Die Werte für A, B und C erhalten Sie, indem Sie die Rechte anhand der folgenden Tabelle addieren:
  A: Benutzer B: Gruppe C: Andere
(r) lesen 4 4 4
(w) schreiben 2 2 2
(x) ausführen 1 1 1

Soll eine Datei beispielsweise die Berechtigung rw-r----- erhalten, so gibt man ein:

chmod 640 dateiname

6. Standard-Zugriffsrechte setzen

Man kann natürlich auch Zugriffsrechte festlegen, welche für neue Dateien standardmäßig gelten sollten. Dies geschieht mit dem Kommando umask, welches man an das Initialisierungsskript der Shell, z.B. .cshrc oder .bash_profile anhängen oder in dieser Datei verändern kann, wenn es dort schon vorhanden ist. Die Berechtigungen für neue Dateien und Verzeichnisse sehen dann z.B. folgendermaßen aus:
Wert für umask Datei Verzeichnis
022 -rw-r--r-- drwxr-xr-x
027 -rw-r----- drwxr-x---
077 -rw------- drwx------

Der Aufruf lautet dann z.B. so:

umask 022
Den aktuellen umask-Wert bekommt man heraus, indem man einfach nur umask eingibt.

Fragen und Anregungen zu diesem Bericht? Schreiben Sie mir eine E-Mail!




nach oben
<< | Berichte | >>
update: 25.01.2004
nach oben

Tipp


Wussten Sie schon?

Es gibt für die Linux-Konsole mit 'bc' einen Rechner, welcher Variablen beherrscht und auch komplexere Ausdrücke ausrechnet.