In deinem unixeinfuehrung-Verzeichnis tippe
ls -l (l für long listing)
Wie du siehst bekommst du so diverse Details zum Inhalt deines Verzeichnisses. Das sollte ähnliche aussehen, wie die Zeile unten.
Jede Datei (und jedes Verzeichnis) hat Zugriffsrechte, die du mit ls -l anzeigen lassen kannst.
-rwxrw-r-- 1 nchiapol hep 2450 Sept29 11:52 list1
Die erste Spalte enthält eine 10 Zeichen lange Kette. Die wichtigsten Zeichen, die in diesen Ketten vorkommen sind d, r, w, x, -. Falls ein d vorhanden ist, so ist es immer das erste Zeichen der Kette. Dieses Zeichen steht für die Art der Datei und ein d hier bezeichnet ein Verzeichnis (directory). (Ein - an der ersten Stelle markiert eine normale Datei.)
Die restlichen 9 Zeichen repräsentieren die Zugriffsrechte und gehören zu drei Gruppen.
Die Zeichen r, w, etc., haben leicht unterschiedliche Bedeutungen, je nachdem ob sie eine gewöhnliche Datei oder ein Verzeichnis betreffen.
Um eine Datei zu lesen brauchst du also Ausführ-Rechte auf dem Verzeichnis, das die Datei enthält und natürlich auch für jedes Verzeichnis oberhalb der Datei im Verzeichnisbaum.
-rwxrwxrwx | eine Datei die jeder lesen, schreiben (und löschen) sowie ausführen kann. |
-rw------- | eine Datei die nur der Besitzer – und niemand sonst – lesen und schreiben kann. Niemand, auch nicht der Besitzer, besitzt Ausführ-Rechte für die Datei. |
Nur der Besitzer einer Datei kann chmod verwenden um deren Rechte zu ändern. Die Optionen von chmod sind wie folgt
Zeichen | Bedeutung |
---|---|
u |
user (Nutzer) |
g |
group (Gruppe) |
o |
other (andere) |
a |
all (alle) |
r |
read (lesen) |
w |
write (schreiben und löschen) |
x |
execute (ausführen bzw. zugreifen für Verzeichnisse) |
+ |
Recht hinzufügen |
- |
Recht entfernen |
Um zum Beispiel allen Lese- und Schreibrechte für biglist zu geben, tippst du
chmod a+rw biglist
Um diese Rechte sowie allfällige Ausführrechte für die Gruppe und die Anderen wieder zu entfernen tippe anschliessend
chmod go-rwx biglist
Dieser Befehl ändert nichts an deinen Rechten als Besitzer der Datei.
Versuche die Zugriffsrechte für science.txt und das backups-Verzeichnis zu ändern. Entferne zum Beispiel die Leserechte für Group oder Other.
Kontrolliere mit ls -l das die Änderung wie gewünscht geklappt hat.
Achtung: Bevor du weiter gehst solltes du die Rechte all deiner Dateien kontrollieren. Normalerweise möchtest du niemandem ausser dir Schreibrechte geben.
ls -la |
zeigt die Zugriffsrechte für alle Dateien |
chmod [options] file |
ändert die Zugriffsrechte für file |
u, g, o, a |
Rechte ändern für user, group, others, all |
+, - |
hinzufügen, entfernen |
r, w, x |
lesen, schreiben, ausführen/Inhalt anzeigen |