Zugriffsrechte (Linux)
Inhaltsverzeichnis
Die Zugriffsrechte
Nutzerklassen
- a) Eigentümer
Eigentümer ist der Ersteller. Sobald Sie eine neue Datei oder Verzeichnis anlegen, werden Sie automatisch zum Eigentümer dieser Datei oder Verzeichnisses. Der Eigentümer bekommt automatisch volle Rechte über die Datei oder dem Verzeichnis.
- b) Gruppe
Mehrere Benutzer können einer bestimmten Gruppe angehören. Die Gruppe dient dazu, um bestimmten Menschen einer Gruppe bestimmte Rechte für eine Datei oder Verzeichnis zu geben.
- c) Der Rest der Welt
Der Rest der Welt (engl. others) sind alle User die weder zu a (Eigentümer) noch zu b (Gruppe) gehören.
Bedeutung der Rechte für Dateien
- a) Lesen
Lesen - (engl. read) bedeutet, dass der Inhalt der Datei angezeigt werden kann, mit zum Beispiel cat, less, head, tail und anderen.
- b) Schreiben
Schreiben - (engl. write) bedeutet, dass der Inhalt der Datei verändert werden darf, mit zum Beispiel vi.
- c) Ausführen
Ausführen - (engl. execute) bedeutet, dass ein Programm/Script gestartet werden kann.
Bedeutung der Rechte für Verzeichnisse
- a) Lesen
Lesen - bedeutet, dass der Inhalt eines Verzeichnisses angeschaut werden darf, zum Beispiel mit dem Kommando ls.
- b) Schreiben
Schreiben - bedeutet, dass in dem Verzeichnis Dateien oder Unterverzeichnisse erstellt oder gelöscht werden durfen.
- c) Ausführen
Ausführen - bedeutet, dass man auf das Verzeichnis zugreifen kann. Wenn ein Verzeichnis kein Ausführungsrecht besitzt, dann können Sie in dem Verzeichnis nichts machen, auch wenn sie Lese- und/oder Schreibrecht für das Verzeichnis besitzen. Damit wird eine zusätzliche Sicherheit geschaffen.
Darstellung der Rechte
Mit dem Befehl ls -l können wir uns die Darstellung der Rechte anschauen: <code=text>
ls -l rechte.txt
-rw-r--r-- 1 swerflash wiki 48 2008-01-19 17:56 rechte.txt </code=text>
Bedeutung
- a) Das erste Zeichen
Das erste Zeichen gibt uns an, ob es sich um eine Datei "-" oder ein Verzeichnis "d" handelt. Ein Verzeichnis wird dem entsprechend mit "d", statt "-" gekennzeichnet.
- b) Die neuen Zeichen nach dem ersten Zeichen
Diese neuen Zeichen regeln die Zugriffsrechte. Die ersten drei gehören dem Besitzer, weitere drei der Gruppe und die letze den anderen (others). Die Buchstabe r steht für read, w für write und x für execute. Wenn wir uns nun die Zeile anschauen, können wir darauslesen, dass der Besitzer Lese und Schreiberechte bei der Datei besitzt, die Gruppe und die Anderen nur Leserechte. Die Datei benötigt kein Execute-Recht, da es sich nicht um ein Programm oder Script handelt.
- c) Anzahl der Links
Die Zahl 1 gibt die Anzahl der Links an, die auf diese Datei verweisen.
- d) Der Besitzer
Danach kommt der Besitzer der Datei. In unserem Fall heißt der besitzer swerflash.
- e) Die Gruppe
Nach dem Besitzer folgt der Gruppe. Der Besitzer swerflash gehört also der Gruppe wiki an.
- f) Die Dateigröße
Danach kommt die Größe der Datei in Byte. Unsere Datei ist 48 Byte groß.
- g) Das Erstelldatum
Als nächstes steht das Erstelldatum bzw. das Änderungsdatum.
- h) Der Dateiname
Und als letzes steht der Name der Datei.
Änderung der Zugriffsrechte
- a) Wer darf die Zugriffsrechte ändern?
Der Eigentümer und der Administrator. Der Administrator kann die Zugriffsrechte immer ändern, auch wenn er ihm die Datei nicht gehört.
- b) Der Befehl zum Ändern der Zugriffsrechte
<code=text>chmod g+w rechte.txt</code=text>
Am Anfang steht das Kommando chmod, welches vom change mode kommt, was auf Deutsch ändere den Modus bzw. die Zugriffsrechte heißt. Danach geben wir an, für welchen Nutzer das geändert werden soll: u (user) - Eigentümer, g (group) - Gruppe, o (others) - Andere bzw. der Rest der Welt. Danach folgt die Operation +. Mit dem Plus vergeben wir die Rechte und mit Minus enziehen wir diese. Und nach der Operation geben wir an, welches Recht wir hinzufügen oder enziehen wollen, also r (read), w (write) oder x (execute). In unserem Fall ist es w (write). Als letzes geben wir die entsprechende Datei an.
Mit dem Befehl haben wir also der Gruppe wiki das Schreibrecht für die Datei gegeben. Alle Benutzer, die zu dieser Gruppe wiki gehören, können nun die Datei ändern und gegebenfalls auch löschen.
Wenn wir nun das Schreibrecht wieder enziehen wollen und dazu gleichzeitig das Leserecht, dann können wir das alles mit einem Befehl tun:
<code=text>chmod g-rw rechte.txt</code=text>
Wenn wir jetzt mit ls -l uns die Zugriffsrechte anzeigen lassen, dann erhalten wir diese ausgabe:
<code=text>
ls -l rechte.txt
-rw-r----- 1 swerflash wiki 48 2008-01-19 17:56 rechte.txt </code=text>
Die numerische Darstellung der Zugriffsrechte
Es gibt noch eine zweite Möglichkeit die Rechte mit Hilfe der Zahlen zu ändern. Diese Methode eignet sich sehr gut zu gleichzeitiger Vergabe mehrerer Rechte. Es können dazu Zahlen 1, 2, 4 verwendet werden.
- a) Ausführen
Ausführen wird mit 1 gekennzeichnet.
- b) Schreiben
Schreiben wird mit 2 gekennzeichnet.
- c) Lesen
Lesen wird mit 4 gekennzeichnet.
Kombination mehrerer Rechte durch Summierung
- a) Die Zahlen können miteinander Summier werden. Wenn wir zum Beispiel einer Datei das Lese- und Schreibrecht geben wollen, dann können wir diese beiden Rechte miteinander summieren, 4 + 2 = 6.
- b) Befehl
Wir möchten nun der Datei rechte.txt andere Rechte zuweisen. Der Besitzer soll Lese-, Schreib- und Ausführrecht erhalten, die Gruppe nur das Leserecht und die Anderen kein Recht. <code=text>chmod 740 rechte.txt</code=text> Die Zahl 7 ergibt sich aus den Zahlen 4 + 2 +1 und die Zahl 0 steht für keine Rechte. Mit ls -l können wir nun unsere Datei anschauen <code=text>
ls -l rechte.txt
-rw-r----- 1 swerflash wiki 48 2008-01-19 17:56 rechte.txt </code=text>