 |
Linux
Schreibrecht chmod (777)
Linux unterscheidet
- wie alle Unix-Varianten - zwischen Lese-, Schreib- und
Ausführrechten (r, w, x) für
- den Besitzer einer Datei (user, u),
- seiner Gruppe (g) und
- dem Rest der Welt (o für other).
In verkürzter Form lassen sich Dateirechte in Form
von drei Oktalzahlen angeben, die die Rechte des Eigentümers,
der Gruppe und der übrigen Benutzer festlegen. Die drei
Bits jeder dieser Zahlen stehen für Leserecht (4), Schreibrecht
(2) und Ausführen (1). Der Wert 754 bedeutet also
- alle Rechte für den Besitzer (4 + 2 + 1 = 7),
- Lese- und Ausführrecht für die Gruppe und
- nur Leserecht für den Rest der Welt.
Bei Verzeichnissen steht Schreibrecht für die Erlaubnis,
neue Dateien in dem Verzeichnis anzulegen sowie bestehende
Files zu löschen und zu überschreiben; Leserecht
benötigt man, um den Inhalt des Verzeichnisses aufzulisten;
und Ausführrecht heißt, dass man in dieses Verzeichnis
wechseln darf.
Die Rechte legt man mit dem Befehl chmod fest;
Besitzer und Gruppe eines Verzeichnisses oder einer Datei
lassen sich mit chown und chgrp ändern.
Webmaster benötigen den chmod -Befehl
vor allem, um im Rahmen von dynamischen HTML -Seiten
die Zugriffsrechte von z.B. CGI -
oder PHP -Dateien
zu regeln.
Hierzu ein paar weitere Beispiele:
Einstellung |
Befehl |
User |
Group |
World |
|
rwx |
rwx |
rwx |
chmod 777 Dateiname |
rwx |
rwx |
r-x |
chmod 775 Dateiname |
rwx |
r-x |
r-x |
chmod 755 Dateiname |
rw- |
rw- |
r-- |
chmod 664 Dateiname |
rw- |
r-- |
r-- |
chmod 644 Dateiname |
r steht für readable (lesbar) |
w steht für writable (beschreibbar) |
x steht für executable (ausführbar) |
das Minuszeichen "-" steht
für "kein Recht" |
Um die Rechte einstellen zu können, verwendet man TELNET
oder eine FTP -Software,
die diesen Befehl beherrscht - hier zum Beispiel WS_FTP :
- Datei markieren, deren Rechte geändert werden sollen
- rechte Maustaste drücken
- und dann ....

chmod [-R] Rechte Datei/Ordner |
Vergleichbarer DOS Befehl: |
--- |
Beispiel(e): chmod
644 datei , chmod -R 755 /home/user , chmod u+rw /home/somedir |
Beschreibung: Durch
'chmod'(change modus) können die Rechte in der
Rechtebeschreibung einer Datei oder eines Verzeichnises
geändert werden.
Parameter: |
-R |
Ändert die Rechte eines Verzeichnis
und rekursiv alle auch bei allen darin enthaltenen
Dateien und Verzeichnissen. |
Rechte: |
(r - lesen, w - schreiben, x - ausführen) |
### |
#(Besitzer) #(Gruppe) #(Andere), 7(rwx),
6(rw), 5(rx), 4(r), 3(wx), 2(w), 1(x), 0(-),
z.B. 640 (Besitzer rw, Gruppe r, Andere keine
Rechte) |
(u)(g)(o)(+/-)(r)(w)(x) |
u - Besitzer, g - Gruppe, o - Andere, +/-
erlauben/verweigern, z.B. u+rw (Besitzer lesen,schreiben
erlauben), go-w (Gruppe und Andere schreiben
verweigern) |
|
Letze Schritte
Öffne wieder eine console auf dem Server, und wechsele in das Chatverzeichnis.
Anschliessend wechsle in das Server-Unterverzeichniss. Wenn du dich dazu entschieden
hast, Logfiles zu erstellen, erstelle ein Verzeichnis mit dem Namen "logs" ( mkdir
logs ), und gib diesem schreibrechte ( chmod 777 logs ).
Anschliessend, führe /usr/local/bin/php server.php --debug .
Wenn keine Fehlermeldung ausgegeben wird, sondern nur die normalen Debugmeldungen, öffne
einen Browser und rufe die Chat-Url ein. Logge dich mit dem benutzer root und
dem passwort admin ein. Siehst du anschliessend eine Begrüssungsmeldung
im Chat, und kannst deine Texte alle lesen, ist alles glatt gelaufen, und der
Chat ist soweit installiert. Logge dich aber vorerst wieder aus dem Chat aus
(browserfenster schliessen), und beende den Chatserver wieder (CTRL+C). Anschliessend
startest du nocheinmal den Chatserver. Dieses mal aber nicht mit --debug, sondern
mit dem Parameter --daemon . Dieses lässt den Chatserver in den Hintergrund
verschwinden, und du kannst so die Konsole beruhigt schliessen. Anschliessend
ist alles korrekt eingerichtet, und du kannst nun deine chatter auf den chat
loslassen. Das Admin-Passwort kannst du im chat mit dem befehl /password
[neues_passwort] ändern.
chmod
(PHP 3, PHP 4 >= 4.0.0)
chmod -- Ändert die Zugriffsrechte einer
Datei
Beschreibung
int chmod (string
filename, int mode)
Diese Funktion ändert die Zugriffsrechte der Datei
spezifiziert in filename in die Zugriffsrechte
um, die in mode spezifiziert sind.
Bedenken Sie, das mode nicht automatisch für
einen Oktalwert gehalten wird. Um sicher zu gehen, dass die
Operation wie erwartet verläuft sollten Sie mode mit
dem Prefix NULL (0) versehen:
chmod ("/somedir/somefile",
755); // dezimal; möglicherweise falsch
chmod ("/somedir/somefile", "u+rwx,go+rx");
// String; falsch
chmod ("/somedir/somefile", 0755); //
oktal; richtiger Wert von mode |
Gibt TRUE bei Erfolg zurück, andernfalls FALSE .
Siehe auch chown() und chgrp() .
Anmerkung: Diese Funktion bleibt unter
Windows-Systemen ohne Effekt.
Ausführlichere Abhandlung >>>hier
|