**This is an old revision of the document!**
Grundlagen
Linux verwaltet die Dateien in einem virtuellen Dateisystem (VFS, Virtual File System). Hier wird jeder Datei über eindeutige Inodes (Nummern) Eigenschaften zugeordnet: • Dateityp (Datei, Ordner, Link) • Zugriffsrechte für Eigentümer, Gruppe, Others • Größe • Zeitstempel • Verweis auf Dateiinhalt
Rechte
Zugriffsrechte regeln, welcher Benutzer und welche Gruppe den Inhalt eins Verzeichnisses oder einer Datei lesen, verändern oder ausführen darf.
Diese Rechte können verändert werden, wenn man dafür die entsprechenden Rechte am Ordner bzw. der Datei verfügt. Der Root darf alles.
Rechte lassen sich bezüglich 3 Arten des Zugriffs einstellen: 1. r - lesen 2. w - schreiben 3. x - ausführen
Symbolische Darstellung von Rechten
Lässt man sich mit ls den Inhalt eines Ordners ausgeben, erhält man beispielsweise folgende Zeile: drwxrwxr-x 2 anna staff 4.0K Apr 23 2020 /home/anna/spielplan.txt In dieser einen Zeile sind viele Informationen verborgen. Hier einmal die einzelnen Bestandteile auseinandergerissen:
| Ordner | Besitzer | Gruppe | Welt | Links zu Datei | Eigentümer | Gruppe | Größe | Zeitstempel | Pfad/Name | d | rwx | rwx | r-x | 2 | anna | staff | 4.0K | Apr 23 2020 | /home/anna/spielplan.txt |
|---|
Obwohl Dateirechte sowohl für Dateien als auch Ordner gelten, gibt es kleine aber feine Unterscheidungen, die beachtet werden müssen. So ist es hoffentlich klar, dass das x-Recht für Dateien etwas anderes bedeuten muss, als für einen Ordner - einen Ordner kann man schließlich nicht “ausführen”.
| < 100% 5% 35% 60% > | Recht | Datei | Verzeichnis | r | Datei kann gelesen werden. | Verzeichnisinhalt kann mit ls angezeigt werden. | w | Datei kann bearbeitet werden. | Dateien können hinzugefügt, gelöscht oder umbenannt werden. | x | Datei kann als Programm ausgeführt werden. | Verzeichnis kann betreten werden (z. B. mit cd), und der Zugriff auf Dateien ist möglich (sofern erlaubt). |
|---|
Die Rechte werden häufig kombiniert. Hier sind typische Szenarien:
Dateien:
r - -: Datei kann nur gelesen werden.r w -: Datei kann gelesen und geschrieben werden, also: geändert.r w x: Datei kann gelesen, geschrieben und ausgeführt werden.
Verzeichnisse:
r - -: Man sieht die Datei- oder Verzeichnisnamen, aber keinen Zugriff auf Inhalte.r - x: Man kann Verzeichnisinhalte sehen und betreten, aber keine Änderungen vornehmen.r w x: Man kann Inhalte auflisten, bearbeiten, hinzufügen und löschen.
Oktale Darstellung
Die Buchstaben der symbolischen Darstellung sowie die Kombinationen aus ihnen werden durch einzelne Ziffern repräsentiert. Dabei steht je 1 Ziffer für genau eine Kombinaton von einem oder mehreren Rechten.
=== Mögliche Werte für Kombinationen von Rechten === |< 100% 30% >| ^ Rechte ^ oktal ^ symbolisch ^ binär ^ | Lesen, schreiben und ausführen | 7 | r w x | 111 | | Lesen und Schreiben | 6 | r w - | 110 | | Lesen und Ausführen | 5 | r - x | 101 | | Nur lesen | 4 | r - - | 100 | | Schreiben und Ausführen | 3 | - w x | 011 | | Nur Schreiben | 2 | - w - | 010 | | Nur Ausführen | 1 | - - x | 001 | | Keine Rechte | 0 | - - - | 000 |
Aus https://wiki.ubuntuusers.de/Rechte/
Diese Kombinationen werden 3 mal angegeben für Benutzer, Gruppe, Others. Daraus folgt ein 3 stellige Kombination von Zahlen. Diese können eingesetzt werden, wenn man die Dateirechte ändern will. Hierzu benutzt man den Befehl chmod
Dateirechte ändern mit chmod
Ausgangspunkt\ rwxr-xr-x 4 wed wed 4.0K Feb 23 14:53 hallo.txt
Änderung Ich will nur noch den Besitzer “wed” lesen und schreiben lassen. Alle anderen dürfen nichts. chmod 600 hallo.txt -rw——- 1 wed wed 17 Feb 23 13:37 hallo.txt Die Kombination hierfür lautet 600 bzw -rw. (6- lesen und schreiben, 0-nichts, 0-nichts)
Änderung Rechte ändern auf lesen, schreiben, ausführen für Eigentümer und Gruppe. Alle anderen sollen wenigstens lesen können: chmod 774 hallo.txt -rwxrwxr– 1 wed wed 17 Feb 23 13:37 hallo.txt
Setzen der Rechte im symbolischen Modus.\ Hierbei können die Buchstaben r,w,x benutzt werden und für Besitzer (u=user), Gruppe(g) und Andere(o=others) explizit gesetzt werden. chmod u=rwx,g=rw,o=r hallo.txt -rwxrw-r– 1 wed wed 17 Feb 23 13:37 hallo.txt
Änderung von Eigentümer-User bzw. Eigentümer-Gruppe von Dateien chown - change owner
Besitzer oder Gruppe können mit uid/ gid oder Namen angegeben werden
chown alice:entwickler dokument.txt
Kombinationsmöglichkeiten von Besitzer und Gruppe ^Kombination ^Bedeutung ^ |besitzer_name:gruppen_name | Benutzer und Gruppe werden auf einen Schlag gesetzt | |:gruppen_name | Die Gruppe wird gesetzt, wohingegen der Besitzer unverändert bleibt | |besitzer_name: | Der Besitzer wird auf besitzer_name - und die Gruppe auf die Standardgruppe des eingeloggten Benutzers gesetz | |besitzer_name | Ausschließlich der Besitzer wird gesetzt |