Chmod: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 87: Zeile 87:
[[Category:Linux]]
[[Category:Linux]]
[[Category:Linux:LPIC:101]]
[[Category:Linux:LPIC:101]]
Mit chmod verändert man die Zugriffsrechte von Dateien. Dies funktioniert jedoch nur bei Dateisystemen, welche die UNIX-Dateirechte unterstützen (z.B. ext2, ext3, ext4, reiser, xfs) Bei FAT ist dies grundsätzlich nicht der Fall, und bei NTFS erfordert dies die Mount-Option permissions (ist standardmäßig nicht gesetzt).
=chmod=
==Modi==
Zugriffsrechte können mit chmod auf zwei Arten gesetzt werden:
*Symbolischer Modus: Den Benutzerkategorien und Zugriffsrechten sind Buchstaben zugeordnet. Mit einer Kombination dieser Buchstaben wird angegeben, welche Rechte gesetzt oder entfernt werden sollen.
In den Modi sind die drei verschiedenen Benutzerkategorien folgendermaßen anzugeben:
Benutzertyp Symbolischer Modus Oktalmodus
Besitzer der Datei u 1. Ziffer
Gruppe der Datei g 2. Ziffer
Andere Benutzer o 3. Ziffer
Besitzer, Gruppe und Andere a
Die anzugebenden Zugriffsrechte r für lesbar, w für schreibbar und x für ausführbar sind weitergehend unter Rechte (Abschnitt „Darstellungsarten“) erläutert.
Symbolischer Modus
Beim symbolischen Modus sind drei Teile anzugeben:
* Zu Beginn der Benutzertyp, dessen Rechte verändert werden sollen. Hier können mehrere Buchstaben kombiniert werden (z. B. ug für Benutzer und Gruppe)
* Dann folgt der Operator: Mit + werden die Rechte gesetzt, mit - entzogen, mit einem = werden nur die explizit angegebenen Rechte gesetzt und die restlichen entzogen.
* Zum Schluss folgen die Rechte. Auch hier können die jeweiligen Buchstaben einfach aneinander gehängt werden.
chmod ändert Zugriffsrechte von Dateien und Ordnern.
*Oktal-Modus: Die Rechte werden in Form einer dreistelligen Oktal-Zahl angegeben, wobei jede Ziffer für die Rechte einer Benutzerkategorie steht.
==UNIX-Zugriffsrechte==
Um den Zugriff auf Dateien zu regeln, können
die Rechte an den Besitzer, die Gruppe und
alle anderen vergeben werden.
{|class="wikitable
|r||  read (Lesen)
|-
|w||  write (Schreiben)
|-
|x||  execute (Ausführen)
|}
{|class="wikitable"
||R||W||X||R||W||X||R||W||X
|-
|colspan="3"|user||colspan="3"|group||colspan="3"|others
|}
 
Beispiel:
Diese können mit dem Befehl ls -l angezeigt
werden .
chmod g-r test
-rw-r--r-- 1 user user 35 Jan 30 14:55 test
{|class="wikitable"
|  - ||  rw-  ||  r-- || ---
|-
| Dateityp || Eigentümers ||  Gruppe || alle Anderen
|-
| Es handelt sich um eine normale Datei. ||  Der Eigentümer darf die Datei lesen, ändern, aber nicht ausführen ||  Die Gruppe darf die Datei nur lesen ||  Alle anderen haben keinen Zugriff auf die Datei
|}
[[category:linuxbefehle]]

Version vom 11. März 2020, 14:47 Uhr


Bezeichnung

chmod (Change mode): ändert Zugriffsrechte von Dateien und Ordnern.

Übersicht

chmod [optionen] mode datei

mode steht für die anzuwendende Rechtemaske. Diese kann numerisch oder symbolisch geschehen.

Symbolisch:

Hier werden die Zugriffsrechte und Benutzerkategorien mit Buchstaben zugeordnet. Die Angabe im symbolischen Modus ist wie folgt aufgebaut: [Benutzerkategorie][Operator][Rechte]

z.B.:

chmod -v u+rwx datei.txt

Benutzerkategorie (ugoa)

  • u = Besitzer
  • g = Gruppe
  • o = Andere
  • a = All (Besitzer, Gruppe und Andere)

Operator (+ – =)

  • + Rechte hinzufügen
  • – Rechte entfernen
  • = Rechte explizit setzen

Rechte (rwx)

  • r = Lesen
  • w = Schreiben
  • x = Ausführen

Numerisch (Oktal):

Hier werden die Zugriffsrechte mit einer dreistelligen Oktalzahl angegeben, jede Ziffer entspricht einer Benutzerkategorie
(z.B.:chmod -v 777 datei.txt)

Benutzerkategorie

  • Erste Stelle = Besitzer
  • Zweite Stelle = Gruppe
  • Dritte Stelle = Andere

Rechte

  • 7 = Voll
  • 6 = Lesen und Schreiben
  • 5 = Lesen und Ausführen
  • 4 = Nur Lesen
  • 3 = Schreiben und Ausführen
  • 2 = Nur Schreiben
  • 1 = Nur Ausführen
  • 0 = Keine

Optionen

Option Beschreibung
-c Wie „-v“ aber nur, wenn auch etwas geändert wird
-f Unterdrückt Fehlermeldungen (–silent, –quiet)
-R Steht für „rekursiv“. Mit diesem Schalter werden alle Ordner und Unterordner inkl. Dateien geändert
-v Steht für “verbose”


Beispiele

chmod 777 datei.txt

Ändert die Rechte der Datei auf Lesen, Schreiben und Ausführen für Besitzer, Gruppe und Andere im im Oktalmodus.

chmod a+rwx datei.txt

Ändert die Rechte der Datei auf Lesen, Schreiben und Ausführen für Besitzer, Gruppe und Andere im symbolischen Modus.

chmod +x script.sh

Macht eine Datei zusätzlich für alle ausführbar.

chmod -R 700 /abc/def

Setz die Dateirechte rekursiv auf 700 im Ordner /abc/def, also auf alle Dateien und Ordner die sich in /abc/def befinden.

chmod u=rw,g=rw,o=r datei.txt

Setz explizit die rechte für Besitzer und Gruppe auf lesen und schreiben und andere dürfen nur lesen.