Chmod

Aus Ubuntu-Forum Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Beispiele)
(Beispiele)
 
(Der Versionsvergleich bezieht 12 dazwischenliegende Versionen mit ein.)
Zeile 1: Zeile 1:
-
[[Bild:804.png]] [[Bild:710.png]] [[Bild:704.png]] [[Bild:610.png]] [[Bild:606.png]] [[Bild:510.png]] [[Bild:504.png]] [[Bild:410.png]]
+
[[Bild:alle.png]]
__TOC__
__TOC__
= Allgemeines =
= Allgemeines =
-
Da nicht jede Datei und jedes Verzeichnis für alle Benutzer einsehbar sein soll  
+
Da nicht jede Datei und jedes Verzeichnis für alle Benutzer einsehbar sein soll, wird der ''chmod'' ('''Ch'''ange '''Mod'''e)-Befehl genutzt, um die Zugriffe auf eine Datei oder ein Verzeichnis festzulegen.
-
(''wir arbeiten schließlich nicht mit Windows 95''), wird der chmod (Change Mode)-Befehl genutzt um die Zugriffe auf eine Datei oder ein Verzeichnis festzulegen.
+
-
Mithilfe von chmod können die Rechte des Besitzers, der Gruppe und
+
Mithilfe von chmod können die Benutzer- und Gruppenrechte auf eine Datei oder ein Verzeichnis verändert werden.
-
für anderen auf eine Datei oder ein Verzeichnis verändert werden.
+
{| {{Hinweis}}  
{| {{Hinweis}}  
-
| Es ist nur dem Besitzer der Datei / des Verzeichnisses und dem
+
| Es ist nur dem Besitzer der Datei / des Verzeichnisses und Root erlaubt, die Rechte auf eine Datei oder auf ein Verzeichnis zu verändern.
-
root-Account des Systems erlaubt, die Rechte auf eine Datei oder auf ein
+
-
Verzeichnis zu verändern
+
|}
|}
-
Um den Besitzer einer Datei oder eines Verzeichnisses zu verändern
+
Um den Besitzer einer Datei oder eines Verzeichnisses zu verändern, wird der [[chown]]-Befehl benutzt. Die aktuellen Benutzerrechte einer Datei werden mit dem [[ls]]-Befehl angezeigt.
-
wird der [[chown]]-Befehl benutzt.
+
-
 
+
-
Um die aktuellen Benutzerrechte einer Datei anzuzeigen wird der [[ls]]-Befehl benutzt.
+
{| {{Warnung}}  
{| {{Warnung}}  
-
| Bei nicht gewissenhafter Benutzung von chmod kann es zu Problemen am System kommen, die beispielsweise die Anmeldung am System verhindern können
+
| Bei nicht gewissenhafter Benutzung von chmod kann es zu Problemen am System kommen, die beispielsweise die Anmeldung am System verhindern können. Chmod sollte daher nicht auf Systemdateien angewendet werden.
|}
|}
= Nutzung =
= Nutzung =
-
Den chmod-Befehl kann man auf zwei unterschiedliche Arten benutzen,
+
Den chmod-Befehl kann man auf zwei unterschiedliche Arten benutzen, im symbolischen oder im oktalen Modus. Gerade für Einsteiger eignet sich der symbolische Modus.
-
in dem symbolischem und in dem oktalen Modus.
+
-
{| {{Hinweis}}
+
-
| Für Anfänger ist der symbolische Modus zu empfehlen
+
== Optionen ==
 +
Bei chmod stehen im symbolischen, sowie im oktalen Modus die gleichen Optionen zur Verfügung:
-
|}
+
{| {{Tabelle}} border=1
-
== Optionen ==
+
-
Bei chmod stehen im symbolischen, sowie im oktalen Modus die gleichen
+
-
Optionen zur Verfügung:
+
-
{| {{Tabellenlayouts}} border=1
+
! Parameter
! Parameter
! Aktion
! Aktion
|--  
|--  
| '''-c'''  ''--changes''   
| '''-c'''  ''--changes''   
-
| Änderungen werden angezeigt
+
| Änderungen anzeigen
|--
|--
| '''-f'''  ''--silent, --quiet ''  
| '''-f'''  ''--silent, --quiet ''  
-
| die meisten Fehlermeldungen werden unterdrückt
+
| Fehlermeldungen unterdrücken
|--
|--
| '''--help'''
| '''--help'''
-
| zeigt die Hilfe zu chmod an
+
| Hilfe anzeigen
|--
|--
| '''-R'''  ''--recursive''   
| '''-R'''  ''--recursive''   
-
| führt die Änderungen rekursiv durch
+
| Änderungen rekursiv durchführen
|--
|--
| '''-v'''  ''--verbose''   
| '''-v'''  ''--verbose''   
-
| eine Diagnose wird angezeigt
+
| Diagnose für die Datei anzeigen
|}
|}
== Symbolischer Modus ==
== Symbolischer Modus ==
Der Syntax des symbolischen Modus sieht folgendermaßen aus:
Der Syntax des symbolischen Modus sieht folgendermaßen aus:
-
  chmod [ [[Chmod#Optionen|Optionen]] ] [u/g/o/a] [+/-/=] [r/w/x] Datei / Verzeichnis
+
  chmod [ [[Chmod#Optionen|Optionen]] ] [u/g/o/a] [+/-/=] [r/w/x] ''datei / verzeichnis''
 +
 
 +
;In diesem Modus muss angegeben werden:
 +
* für wen die Rechte geändert werden sollen ('''u'''ser, '''g'''roup, '''o'''ther, '''a'''ll).
 +
* ob die Rechte erlaubt (+), entzogen (-) oder gesetzt (=) werden sollen.
 +
* welche Rechte geändert werden sollen ('''r'''ead, '''w'''rite, '''e'''xecute).
 +
* für welche Datei oder für welches Verzeichnis die Rechte verändert werden sollen.
-
In diesem Modus muss angegeben werden:<br/>
 
-
- für wen die Rechte geändert werden sollen ('''u'''ser, '''g'''roup, '''o'''ther, '''a'''ll)<br/>
 
-
- ob die Rechte erlaubt (+), entzogen (-) oder gesetzt (=) werden sollen<br/>
 
-
- welche Rechte geändert werden sollen ('''r'''ead, '''w'''rite, '''e'''xecute)<br/>
 
-
- für welche Datei oder für welches Verzeichnis die Rechte verändert werden sollen
 
=== Beispiele ===
=== Beispiele ===
-
Sollen die Rechte auf eine Datei, auf ein Verzeichnis außerhalb des eigenen Benutzerverzeichnisses
+
Sollen die Rechte auf eine Datei, auf ein Verzeichnis außerhalb des eigenen [[Benutzerverzeichnis|Benutzerverzeichnisses]] verändert werden, so muss die Operation mit [[sudo|Root]]-Rechten geschehen.  
-
verändert werden, so muss die Operation mit [[root]]-Rechten geschehen.  
+
{| {{Warnung}}  
{| {{Warnung}}  
-
| Mit chmod in Verbindung von [[root]]-Rechten sollte nur gewissenhaft am System gearbeitet werden, da schon
+
| Mit chmod und Root-Rechten sollte nur gewissenhaft am System gearbeitet werden, da schon kleinste Änderungen an Systemdateien gravierende Auswirkungen haben können.
-
die kleinste Änderungen an Systemdateien gravierende Auswirkungen haben kann
+
|}
|}
-
* Allen Benutzern auf dem System uneingeschränkte Rechte auf die Datei: "Rechnung02" gewähren
+
; Allen Benutzern uneingeschränkte Rechte gewähren:
-
  chmod a+rwx Rechnung02
+
  chmod a+rwx ''datei''
-
* Der Datei zugehörigen Gruppe Ausführrechte auf die Datei: "read.pl" gewähren
+
; Der Datei zugehörigen Gruppe Ausführrechte gewähren:
-
  chmod g+x read.pl
+
  chmod g+x ''datei''
-
* Dem Besitzer rekursiv alle Rechte auf alle Dateien in einem Verzeichnis geben
+
; Dem Besitzer rekursiv alle Rechte auf alle Dateien in einem Verzeichnis geben:
-
  chmod -R u=rwx Vereichnis
+
  chmod -R u=rwx ''verzeichnis''
-
* Dem Besitzer, sowie der zugehörigen Gruppe Lese- und Ausführrechte auf eine Datei geben
+
; Dem Besitzer, sowie der zugehörigen Gruppe Lese- und Ausführrechte auf eine Datei geben:
-
  chmod ug=rx Datei
+
  chmod ug=rx ''datei''
== Oktaler Modus ==
== Oktaler Modus ==
-
Der oktale Modus von chmod wird auch oft als absoluter Modus für chmod gesehen, da
+
Der oktale Modus von chmod wird auch oft als absoluter Modus für chmod gesehen, da in diesem Modus nur Rechte gesetzt werden und nicht wie etwa im relativen Modus Rechte auch hinzugefügt oder abgezogen werden können.
-
in diesem Modus nur Rechte gesetzt werden und nicht wie etwa im relativen
+
-
Modus Rechte auch hinzugefügt oder abgezogen werden können.
+
-
Gleichzeitig hat dieser Modus den Nachteil, dass sich auch Rechte an deren Änderung
+
Gleichzeitig hat dieser Modus den Nachteil, dass sich auch Rechte unbeabsichtigt verändern können.
-
Sie nicht denken verändern können.
+
Der Syntax von chmod im Oktalen Modus lautet:
Der Syntax von chmod im Oktalen Modus lautet:
-
  chmod [ [[Chmod#Optionen|Optionen]] ] [Oktalzahl] Datei
+
  chmod [ [[Chmod#Optionen|Optionen]] ] [Oktalzahl] ''datei''
Hier folgen die meist genutzten Oktalzahlen im Umgang mit chmod:
Hier folgen die meist genutzten Oktalzahlen im Umgang mit chmod:
-
{| {{Tabellenlayouts}} border=1
+
{| {{Tabelle}} border=1
! Oktalzahl  
! Oktalzahl  
! Zugriffsrechte
! Zugriffsrechte
Zeile 114: Zeile 98:
|}
|}
-
Diese Oktalzahl setzt sich aus 3 Ziffern zusammen, wobei die erste für
+
Diese Oktalzahl setzt sich aus drei Ziffern zusammen, wobei die erste für den Besitzer der Datei, die zweite für die zugehörige Gruppe und die letzte für alle anderen steht.
-
den Besitzer der Datei, die zweite für die zugehörige Gruppe und die letzte
+
-
für alle anderen steht.
+
Die einzelnen Rechte haben folgende Zahlenwerte:
Die einzelnen Rechte haben folgende Zahlenwerte:
-
{| {{Tabellenlayouts}} border=1
+
{| {{Tabelle}} border=1
! Wert
! Wert
! Recht
! Recht
Zeile 133: Zeile 115:
|}
|}
Würde also der Bedarf bestehen, allen Benutzern des System das Leserecht auf eine Datei zu gewähren,
Würde also der Bedarf bestehen, allen Benutzern des System das Leserecht auf eine Datei zu gewähren,
-
müssten wir die Oktalzahl 444 mit chmod setzten:
+
muss die Oktalzahl ''444'' mit chmod setzten:
-
  chmod 444 Datei
+
  chmod 444 ''datei''
-
Wenn wir jedoch z.B. dem Besitzer der Datei volle Rechte auf die Datei gewähren wollen und allen
+
Wenn jedoch z.B. dem Besitzer der Datei volle Rechte auf die Datei gewährt werden soll und allen
-
anderen lediglich Leserechte gewähren wollen, so müssen wir die Werte der Rechte addieren.
+
anderen lediglich Leserechte, so müssen die Werte der Rechte addiert werden.
-
Lese- (4) + Schreib- (2) + Ausführrechte (1) würden also dem Wert 7 entsprechen und so können wir
+
Lese- (4) + Schreib- (2) + Ausführrechte (1) würden also dem Wert 7 entsprechen. Daher muss dann die Zahl 744 mit chmod gesetzt werden:
-
die Zahl 744 mit chmod setzen:
+
  chmod 744 ''datei''
-
  chmod 744 Datei
+
=== Beispiele ===
=== Beispiele ===
-
* Allen Benutzern des Systems alle Zugriffsrechte auf den Ordner: ''Bilder'' gewähren
+
;Allen Benutzern des Systems alle Zugriffsrechte gewähren:
-
  chmod 777 Bilder
+
  chmod 777 ''datei''
-
* Eine Datei für einen Benutzer der zugehörigen Gruppe ausführbar machen
+
;Datei für einen Benutzer der zugehörigen Gruppe ausführbar machen:
-
  chmod 775 Datei
+
  chmod 775 ''datei''
-
[[Kategorie:System]] [[Kategorie:Terminal]]
+
[[Kategorie:Terminal]]

Aktuelle Version vom 11. Januar 2011, 20:51 Uhr

Alle.png

Inhaltsverzeichnis

1 Allgemeines

Da nicht jede Datei und jedes Verzeichnis für alle Benutzer einsehbar sein soll, wird der chmod (Change Mode)-Befehl genutzt, um die Zugriffe auf eine Datei oder ein Verzeichnis festzulegen.

Mithilfe von chmod können die Benutzer- und Gruppenrechte auf eine Datei oder ein Verzeichnis verändert werden.

Es ist nur dem Besitzer der Datei / des Verzeichnisses und Root erlaubt, die Rechte auf eine Datei oder auf ein Verzeichnis zu verändern.

Um den Besitzer einer Datei oder eines Verzeichnisses zu verändern, wird der chown-Befehl benutzt. Die aktuellen Benutzerrechte einer Datei werden mit dem ls-Befehl angezeigt.

Bei nicht gewissenhafter Benutzung von chmod kann es zu Problemen am System kommen, die beispielsweise die Anmeldung am System verhindern können. Chmod sollte daher nicht auf Systemdateien angewendet werden.

2 Nutzung

Den chmod-Befehl kann man auf zwei unterschiedliche Arten benutzen, im symbolischen oder im oktalen Modus. Gerade für Einsteiger eignet sich der symbolische Modus.

2.1 Optionen

Bei chmod stehen im symbolischen, sowie im oktalen Modus die gleichen Optionen zur Verfügung:

Parameter Aktion
-c --changes Änderungen anzeigen
-f --silent, --quiet Fehlermeldungen unterdrücken
--help Hilfe anzeigen
-R --recursive Änderungen rekursiv durchführen
-v --verbose Diagnose für die Datei anzeigen

2.2 Symbolischer Modus

Der Syntax des symbolischen Modus sieht folgendermaßen aus:

chmod [ Optionen ] [u/g/o/a] [+/-/=] [r/w/x] datei / verzeichnis
In diesem Modus muss angegeben werden

2.2.1 Beispiele

Sollen die Rechte auf eine Datei, auf ein Verzeichnis außerhalb des eigenen Benutzerverzeichnisses verändert werden, so muss die Operation mit Root-Rechten geschehen.

Mit chmod und Root-Rechten sollte nur gewissenhaft am System gearbeitet werden, da schon kleinste Änderungen an Systemdateien gravierende Auswirkungen haben können.


Allen Benutzern uneingeschränkte Rechte gewähren
chmod a+rwx datei
Der Datei zugehörigen Gruppe Ausführrechte gewähren
chmod g+x datei
Dem Besitzer rekursiv alle Rechte auf alle Dateien in einem Verzeichnis geben
chmod -R u=rwx verzeichnis
Dem Besitzer, sowie der zugehörigen Gruppe Lese- und Ausführrechte auf eine Datei geben
chmod ug=rx datei

2.3 Oktaler Modus

Der oktale Modus von chmod wird auch oft als absoluter Modus für chmod gesehen, da in diesem Modus nur Rechte gesetzt werden und nicht wie etwa im relativen Modus Rechte auch hinzugefügt oder abgezogen werden können.

Gleichzeitig hat dieser Modus den Nachteil, dass sich auch Rechte unbeabsichtigt verändern können.

Der Syntax von chmod im Oktalen Modus lautet:

chmod [ Optionen ] [Oktalzahl] datei

Hier folgen die meist genutzten Oktalzahlen im Umgang mit chmod:

Oktalzahl Zugriffsrechte
664 Schreibrechte für den Benutzer und für die Gruppe, Leserechte für alle
666 Lese- und Schreibrechte für alle
775 Lese- und Ausführrechte für alle, Schreibrechte nur für den Benutzer und der Gruppe
777 Lese-, Schreib- und Ausführrechte für alle

Diese Oktalzahl setzt sich aus drei Ziffern zusammen, wobei die erste für den Besitzer der Datei, die zweite für die zugehörige Gruppe und die letzte für alle anderen steht.

Die einzelnen Rechte haben folgende Zahlenwerte:

Wert Recht
4 Leserecht
2 Schreibrecht
1 Ausführungsrecht

Würde also der Bedarf bestehen, allen Benutzern des System das Leserecht auf eine Datei zu gewähren, muss die Oktalzahl 444 mit chmod setzten:

chmod 444 datei

Wenn jedoch z.B. dem Besitzer der Datei volle Rechte auf die Datei gewährt werden soll und allen anderen lediglich Leserechte, so müssen die Werte der Rechte addiert werden. Lese- (4) + Schreib- (2) + Ausführrechte (1) würden also dem Wert 7 entsprechen. Daher muss dann die Zahl 744 mit chmod gesetzt werden:

chmod 744 datei

2.3.1 Beispiele

Allen Benutzern des Systems alle Zugriffsrechte gewähren
chmod 777 datei
Datei für einen Benutzer der zugehörigen Gruppe ausführbar machen
chmod 775 datei
Meine Werkzeuge
Namensräume
Varianten
Aktionen
Forum
Navigation
Internes
Bearbeitungshilfen
Werkzeuge