Rechte auf Dateien und Ordner getrennt vergeben: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
 
Zeile 1: Zeile 1:
<!-- in Arbeit von robi -->
+
== Rechte auf Dateien und Ordner getrennt vergeben ==
 +
 +
=== Problem ===
 +
Wenn rekursiv in ganzen Verzeichnisstrukturen die Zugriffsrechte neu vergeben werden sollen, dann stellt sich die Frage <br/>
 +
 
 +
 
 +
: ''Wie kann man effektiv den Ordnern andere Zugriffsrechte geben als den Dateien?''
 +
 
 +
 
 +
der normale rekursive Aufruf von '''chmod''' würde dazu führen das entweder alle Dateien das Ausführungsrecht bekämen oder keines der Verzeichnisse das Ausführungsrecht hätte. Beides währe fatal.
 +
 
 +
 
 +
 
 +
=== Lösung ===
 +
; erste Möglichkeit :
 +
eine Trennung nach den Dateitype mit dem '''find''' Befehl und damit als Argument nach chmod.
 +
 
 +
<pre>
 +
find . -type d -exec chmod 755 {} \;
 +
find . -type f -exec chmod 644 {} \;
 +
</pre>
 +
 
 +
 
 +
 
 +
; weiter Möglichkeit : mit nur einem Befehl bietet chmod selbst im Symbolic Mode
 +
<pre>
 +
chmod -R u=rwX,g=rX,o=rX .
 +
</pre>
 +
 
 +
; Erklärung :
 +
Wird das eXecute-Recht mit grossem '''X''' schreibt, dann bekommen nur Verzeichnisse das x-Recht.
 +
 
 +
 
 +
 
 +
=== Links ===
 +
 
 +
siehe dazu auch
 +
* [[http://www.openbsd.org/cgi-bin/man.cgi?query=chmod&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=html man chmod]]
 +
* [[http://www.openbsd.org/cgi-bin/man.cgi?query=find&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=html man find]]
 +
 
 +
 
 +
<!-- robi 31.08.2006 -->

Version vom 31. August 2006, 20:02 Uhr

Rechte auf Dateien und Ordner getrennt vergeben

Problem

Wenn rekursiv in ganzen Verzeichnisstrukturen die Zugriffsrechte neu vergeben werden sollen, dann stellt sich die Frage


Wie kann man effektiv den Ordnern andere Zugriffsrechte geben als den Dateien?


der normale rekursive Aufruf von chmod würde dazu führen das entweder alle Dateien das Ausführungsrecht bekämen oder keines der Verzeichnisse das Ausführungsrecht hätte. Beides währe fatal.


Lösung

erste Möglichkeit 

eine Trennung nach den Dateitype mit dem find Befehl und damit als Argument nach chmod.

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;


weiter Möglichkeit 
mit nur einem Befehl bietet chmod selbst im Symbolic Mode
chmod -R u=rwX,g=rX,o=rX .
Erklärung 

Wird das eXecute-Recht mit grossem X schreibt, dann bekommen nur Verzeichnisse das x-Recht.


Links

siehe dazu auch