Linux/Unix-DateirechteJedes Verzeichnis und jede Datei in einem Unix-System hat bestimmte Rechte und Eigenschaften. Diese kann man sich in der Shell mit dem Befehl ls -l anzeigen lassen. Die Ausgabe kann dann z.B. so aussehen: user1@linuxpc:/home/user1/dir1 > ls -l total 80
Die Rechte stehen ganz links im Listing. Danach folgt die Anzahl der Hardlinks,s dann der Besitzer der Datei, dann die Gruppe, die Größe, das Datum an dem die Datei erstellt wurde und schließlich der Dateiname. Die Dateirechte sind wie folgt gegliedert:
Die nächsten 9 Zeichen geben die Zugriffsrechte für die Datei an. Dazu werden 3 Blöcke mit jeweils 3 Zeichen verwendet, wobei der erste Block die Zugriffsrechte des Benutzers angibt, der zweite Block die der Gruppe und der dritte Block bezieht sich auf alle weiteren (jeder).
Um die Rechte einer Datei bzw. eines Verzeichnisses zu ändern, kann man entweder im Datei-Browser (z.B. Konqueror) sich die Eigenschaften der Datei anzeigen lassen und entsprechend bei den Rechten Häkchen setzen, oder nicht. Diese Vorgehensweise ist wahrscheinlich die komfortabelste. Darüber hinaus gibt es das Shell-Kommando chmod (von CHangeMODus). Dabei kann man entweder die symbolische Schreibweise verwenden oder direkt den Oktalen Wert angeben. chmod MODUS[,MODUS] DATEIEN Da sich die Zugriffsrechte in drei Sparten teilen, gibt es in der symbolischen Schreibweise noch die folgenden Zeichen mit Zusatzbedeutungen:
Die Rechte können entweder direkt für alle angeben werden, oder nur die Änderungen gegenüber den aktuell gesetzten Rechten werden. Um z.B. dem Benutzer alle Rechte, der Gruppe Lese- und Ausführungsrechte und dem Rest nur Leserechte auf die Datei meinProgramm zu geben, kann man folgende äquivalenten Befehle ausführen: $ chmod 754 [Datei] $ chmod u=rwx,g=rx,o=r [Datei] Anstelle von "Datei" können hier auch Wildcards, also z.B. für alle Dateien im Verzeichnis das Zeichen "*", verwendet werden. Ändern der Gruppenzugehörigkeit: Oft ist es so, dass ein Benutzer mehreren Gruppen angehört. Um sich diese Gruppen anzeigen zu lassen, gibt des den Befehl groups. Alternativ kann man unter vielen Distributionen auch id verwenden. Dieser Befehl zeigt dann auch die Primärgruppe des Users an. Standartmäßig gehören alle Dateien, die man anlegt, zu dieser Primärgruppe. Man kann jedoch mit newgrp die Primärgruppe wechseln, so das alle neuen Dateien auch direkt zu der neuen Gruppe gehören. Um nachträglich die Gruppenzugehörigkeit einer Datei zu verändern, gibt es den chgrp Befehl. Dabei gibt man den Namen der neuen Gruppe an und die Dateien, die zu dieser Gruppe dazugehören sollen: $ chgrp [neue Gruppe] [Datei] Um den Besitzer einer Datei zu wechseln, gibt es den Befehl chown (Change Owner). Dieser wird folgendermaßen angewendet: $ chown [neuer Benutzer] [Datei] Um die Rechte für andere Benutzer standartmäßig einzuschränken, kann man mit umask eine Maske angeben, die mit den Rechten verknüpft werden soll. Ein in dieser Maske gesetztes Bit führt dazu, das beim Anlegen neuer Dateien die entsprechenden Bits dort nicht gesetzt werden. Durch ein umask 077 erhält man z.B. die alleinigen Rechte an neuen Dateien, während ein umask u=rw,g=rw,o= dem Benutzer und seiner Gruppe Lese- und Schreibrechte ermöglicht. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||