Datei- und Verzeichnisrechte unter Unix

  • Wenn Sie unter Unix Dateien aufrufen, editieren oder löschen wollen, wird eine genaue Kontrolle der Rechte vorgenommen. Ebenso bei dem Löschen bzw. Wechsel von Verzeichnissen. Dabei ist zu unterscheiden, dass es Benutzerrechte, Gruppenrechte und Rechte für alle gibt. Wenn Sie z.B. mit dem Kommando "ls -la" in Ihrem Homeverzeichnis alle Dateien auflisten lassen, sehen Sie diese. -rw------- 1 marco users 8722 2003-02-05 14:44 .bash_history / -rw-r--r-- 1 marco users 777 2002-02-20 20:21 .bash_profile / -rw------- 1 marco users 7032 2003-02-05 15:00 .viminfo / -rw-rw---- 1 marco users 3578 2002-04-17 13:08 .vimrc / drwx------ 2 marco users 4096 2003-01-17 08:54 backups - Ändern lassen sich diese Rechte mit dem Befehl "chmod": Eine Kombination der Buchstaben »ugoa« steuert, wessen Zugriff auf die Datei geändert wird: Der Besitzer (User - u), andere Nutzer in der Gruppe der Datei (g), andere Nutzer, die nicht in der Gruppe der Datei sind (Other - o), oder alle Nutzer (a). Wenn keiner davon gegeben ist, ist der Effekt so, als ob »a« gegeben sei, aber es werden keine Bits beeinflusst, die in der »umask« gesetzt sind. Der Operator »+« fügt die angegebenen Rechte den bestehenden Rechten jeder Datei hinzu; »-« entfernt sie; »=« lässt sie die einzigen Rechte jener Datei sein. Die Buchstaben (rwx) wählen die neuen Zugriffsrechte für die betroffenen Nutzer aus: Lesen (Read - r), Schreiben (Write - w), Ausführen oder Zugriff auf ein Verzeichnis (eXecute - x). Beispiel: "chmod ug+rwx" -> Der Nutzer bzw. die Gruppe erhalten alle Rechte an dieser Datei/Verzeichnis. Oft hört man auch den numerischen Modus wie "chmod 0770". Ein numerischer Modus besteht aus ein bis vier Oktalziffern (0-7), die durch Addition der Werte 4, 2 und 1 entstehen. Fehlende Ziffern werden als führende Nullen interpretiert. Die erste Ziffer wählt Nutzer- (4) bzw. Gruppen-ID (2) und Text- oder Sticky-Bit (1). Die zweite Ziffer wählt Zugriffsrechte für den Nutzer, der die Datei besitzt: Lesen (4), Schreiben (2) und Ausführen (1); die dritte entsprechend für die anderen Nutzer in der Gruppe der Datei; die vierte schließlich für andere Nutzer, die nicht in der Gruppe der Datei sind. Übrigens: chmod ändert nie die Rechte symbolischer Verknüpfungen. In den nachfolgenden Spalten kann man den Nutzer (marco) und die Gruppe (user) erkennen. Diese lassen sich über "chown" einfach ändern. Beispiel: "chown .vimrc root:users" -> Der neue Nutzer dieser Datei ist root. Noch ein letzter Tipp: Mit dem Argument -R lassen sich beide Befehle auch rekursiv für Unterverzeichnisse ausführen.