umask()
Daniel
- php
hi,
ich wollte gerade mit umask() die rechte verändern, habs wohl auch
geschaft das ganze aber extrem runteregsetzt. welchen code muss ich bei
umask() machen???
hatte umask(0700)
MfG
puts "Hallo " + gets.chomp + "."
?> Daniel
=> Hallo Daniel.
ich wollte gerade mit umask() die rechte verändern, habs wohl auch
geschaft das ganze aber extrem runteregsetzt. welchen code muss ich bei
umask() machen???
Bitte? Ich verstehe die Frage nicht, hattest du nicht eben geschrieben, dass du es bereits getan hattest?
Siehe auch umask().
Einen schönen Donnerstag noch.
Gruß, Ashura
Hi,
Bitte? Ich verstehe die Frage nicht, hattest du nicht eben geschrieben, dass du es bereits getan hattest?
Ja und das war das problem, ich habe umask(0777) gemacht, deshalb bekam
ich fehlermeldungen ohne ende. dank deinem und dem post von Sven
Rautenberg hab ich nun aber geschnackelt das es quasi das gegenteil sein
muss also umask(0000) hab jetzt aber erstmal nur umask(0012) gemacht,
jetzt bekomm ich keine fehlermeldungen mehr, diese funktion ist sehr
schlecht beschrieben finde ich, kann mir das mal jmd genauer erklären?
MfG
puts "Hallo " + gets.chomp + "."
?> Daniel
=> Hallo Daniel.
diese funktion ist sehr
schlecht beschrieben finde ich, kann mir das mal jmd genauer erklären?
Darum sollte man auch zu jeder Funktion die Userkommentare lesen.
Einen schönen Donnerstag noch.
Gruß, Ashura
Hi,
Darum sollte man auch zu jeder Funktion die Userkommentare lesen.
die auf englisch sind und zum teil nur aus unverständlichem
unkommentierten Code bestehn.
anscheinend übernimmt er die änderung nicht dauerhaft denn sobald ich
das umask jetzt wieder rausnehme kommen wieder die Fehlermeldungen :(
Hier ein paar beispiele an fehlermeldungen:
Warning: session_start(): open(/var/lib/php/sess_54c37b2212444216d55f585b14fa8d0e, O_RDWR) failed: Permission denied (13) in <aufgerufene php-datei> on line 2
Warning: Unknown(): open(/var/lib/php/sess_54c37b2212444216d55f585b14fa8d0e, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php) in Unknown on line 0
MfG
puts "Hallo " + gets.chomp + "."
?> Daniel
=> Hallo Daniel.
die auf englisch sind und zum teil nur aus unverständlichem
unkommentierten Code bestehn.
Dass Englisch die Grundvorraussetzung zum Erlernen von Programmiersprachen ist, sollte bekannt sein.
Mit ein wenig Einarbeitung kann man aber auch die unkommentierten Codeschnipsel deuten.
Warum nimmst du eigentlich nicht chmod?
Einen schönen Donnerstag noch.
Gruß, Ashura
Hi,
Warum nimmst du eigentlich nicht chmod?
weil das nur auf ne datei geht und nicht auf schon angelegte
verzeichnisse, ich brauch das ja garnicht. war ja nur ne spielerei, aber
jetzt scheint es mir alles zerhagelt zu haben, wie bekomm ich das
wieder hin das php wieder sessions machen kann?
MfG
Hallo!
weil das nur auf ne datei geht und nicht auf schon angelegte
verzeichnisse, ich brauch das ja garnicht.
umask "geht" nicht auf angelegte Verzeichnisse, sondern wirkt sich nur auf Dateien/Verzeichnisse aus, die nach dem Setzen der umask angelegt werden.
Grüße
Andreas
Hallo!
Warning: session_start(): open(/var/lib/php/sess_54c37b2212444216d55f585b14fa8d0e, O_RDWR) failed: Permission denied (13) in <aufgerufene php-datei> on line 2
Warning: Unknown(): open(/var/lib/php/sess_54c37b2212444216d55f585b14fa8d0e, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php) in Unknown on line 0
Was hat das denn mit PHPs umask()-Funktion zu tun? Der System-Administrator sollte dafür sorgen, dass PHP-Scripte in das konfigurierte Session-Verzeichnis schreiben können.
Grüße
Andreas
Hi,
Was hat das denn mit PHPs umask()-Funktion zu tun? Der System-Administrator sollte dafür sorgen, dass PHP-Scripte in das konfigurierte Session-Verzeichnis schreiben können.
ganz einfach, vor der ausführung von umask hat es diese fehlermeldungen
nicht gegeben daraus schließe ich das umask schuld ist.
MfG
Hallo!
ganz einfach, vor der ausführung von umask hat es diese fehlermeldungen
nicht gegeben daraus schließe ich das umask schuld ist.
Dann mach das was Du damals gemacht hast wieder rückgängig (oder sag besser dem Sysadmin dass er das wieder gerade biegen soll). Ich habe keine Ahnung welche umask Dein Session-Verzeichnis braucht, das hängt von mehreren Faktoren ab. Z.B. ob mod_php oder CGI verwendet wird, ob suexec/suphp verwendet wird, wer Besitzer des Verzeichnisses ist...
Der Benutzer unter dem PHP ausgeführt wird, braucht Schreib- und Leserechte auf das Verzeichnis. Also vermute ich einfach mal sowas wie 066 oder 006.
Grüße
Andreas
Hi,
Dann mach das was Du damals gemacht hast wieder rückgängig
wie mach ich ein umask(777) rückkängig?
(oder sag besser dem Sysadmin dass er das wieder gerade biegen soll).
sowas gibts nicht, bzw. das bin ich.
Ich habe keine Ahnung welche umask Dein Session-Verzeichnis braucht, das hängt von mehreren Faktoren ab. Z.B. ob mod_php oder CGI verwendet wird, ob suexec/suphp verwendet wird,
es istn linux server mit apache und PHP, könnte ein phpinfo() vll
weiterhelfen? wenn ja welche werte müssen wie sein? bzw. welche werte
sind wichtig?
Der Benutzer unter dem PHP ausgeführt wird, braucht Schreib- und Leserechte auf das Verzeichnis. Also vermute ich einfach mal sowas wie 066 oder 006.
und wie stell ich das mit umask ein? umask(066)?
MfG
Hi!
Dann mach das was Du damals gemacht hast wieder rückgängig
wie mach ich ein umask(777) rückkängig?
Mit einem entsprechenden umask(), also z.B. umask(0022).
(oder sag besser dem Sysadmin dass er das wieder gerade biegen soll).
sowas gibts nicht, bzw. das bin ich.
Dann solltest du dir jemanden suchen, der sich damit wirklich auskennt. Insbesondere bei so etwas sensiblen wie Rechte ist genaues Wissen über mögliche Konsequenzen _absolut_ notwendig.
Ich habe keine Ahnung welche umask Dein Session-Verzeichnis braucht, das hängt von mehreren Faktoren ab. Z.B. ob mod_php oder CGI verwendet wird, ob suexec/suphp verwendet wird,
es istn linux server mit apache und PHP, könnte ein phpinfo() vll
weiterhelfen? wenn ja welche werte müssen wie sein? bzw. welche werte
sind wichtig?
Ja, Ausgaben aus der phpinfo() sollten da schon weiterhelfen, z.B. die Ausgabe von „Server API“. Dennoch solltest du als Admin auch selber wissen, ob mod_php oder die CGI-Variante läuft und ob SuPHP bzw. der SuExec-Wrapper aktiviert ist.
Der Benutzer unter dem PHP ausgeführt wird, braucht Schreib- und Leserechte auf das Verzeichnis. Also vermute ich einfach mal sowas wie 066 oder 006.
und wie stell ich das mit umask ein? umask(066)?
Ein umask(0066) beutetet, dass zukünftige angelegte Verzeichnisse/Dateien vom Besitzer gelesen, geschrieben und ausgeführt werden dürfen. Andere (Gruppe und Welt) dürfen jedoch nur „ausführen“, d.h. in ein Verzeichnis wechseln. Ob das für deine Zwecke passt, kann ich dir nicht sagen, da es auf die Konfiguration des Servers ankommt.
Darüber hinaus würde ich sowas - wenn du eh der Admin des Servers bist und damit Shell-Zugriff haben solltest - in der Kommandozeile machen, da dies dort wesentlich einfacher ist, anstatt mit PHP daran herumzubasteln.
Grüße,
Fabian St.
Hallo!
Ja und das war das problem, ich habe umask(0777) gemacht, deshalb bekam
ich fehlermeldungen ohne ende. dank deinem und dem post von Sven
Rautenberg hab ich nun aber geschnackelt das es quasi das gegenteil sein
muss also umask(0000) hab jetzt aber erstmal nur umask(0012) gemacht,
jetzt bekomm ich keine fehlermeldungen mehr, diese funktion ist sehr
schlecht beschrieben finde ich, kann mir das mal jmd genauer erklären?
Mit chmod setzt Du die Zugriffsrechte, mit umask definierst Du die Rechte, die beim Anlegen neuer Dateien/Verzeichnisse _nicht_ gesetzt werden.
Mal ein paar Links:
http://www.linuxfibel.de/access.htm#maske
http://aktuell.de.selfhtml.org/artikel/server/linux/index.htm#rechte
http://www.selflinux.org/selflinux-devel/html/nutzer_unter_linux.html
Grüße
Andreas
Moin!
ich wollte gerade mit umask() die rechte verändern, habs wohl auch
geschaft das ganze aber extrem runteregsetzt. welchen code muss ich bei
umask() machen???
hatte umask(0700)
Das ist ganz schlecht, damit verweigerst du dem Dateibesitzer jegliche Rechte an den neu erstellten Dateien.
In der umask sind alle diejenigen Bits GESETZT, die bei den endgültigen Dateirechten auf jeden Fall NICHT GESETZT sein sollen. Typische Werte für umask sind 022 und 002. Der erste Fall verhindert Schreibrechte für die Gruppe und "Welt", der zweite immerhin noch für "Welt".
Unabhängig von umask-Einstellungen kann man aber trotzdem nach der Dateierstellung andere Rechte vergeben, d.h. umask 777 (keinerlei Rechte für niemanden) würde trotzdem nicht verhindern, dass man chmod 777 für die Datei ausführt, da bestehende Dateien nicht von umask beeinflusst werden.
Hi,
umask 777 (keinerlei Rechte für niemanden)
ich will aber rechte für PHP.
MfG
Hi Sven,
... keinerlei Rechte für niemanden ...
Das heißt ungefähr so viel wie (alle) Rechte für jedermann ;-)
MfG, Dennis.
Hi,
umask(777) hat scheinbar die rechte verhuntzt, bekomme ansich keinen
zugriff mehr auf den Sessionordner etc.
Wenn ich die zeilen:
umask(000);
auf der ersten seite habe dann geht es, mach ich die aber raus sind die fehlermeldungen wieder da, komischerweise scheint es ihn nicht zu intressieren wo das steht.
Das ganze ist ein Linux-server mit Apache und PHP ich bin echt am
verzweifeln. woran kann das liegen???
MfG
Hi,
scheinbar hat sich das ganze jetzt in wohlgefallen aufgelöst, warum auch immer.
MfG
Hi,
ich werd noch kirre.
ein echo umask();
spuckt 9 aus, was heißst das?
ich hab wieder keine zugriffe mit PHP auf den session ordner, ist da
irgendwo was kaputt?
HILFE!!!!!!!!!!!!
MfG
ein
echo umask();
spuckt 9 aus, was heißst das?
Dezimal 9 entspricht binär 1001 entspricht oktal 11. Die umask-Maske wird in Anleitungen oktal geschrieben, in der binären Darstellung kann man die Rechte Lesen, Schreiben, Ausführen (in der Reihenfolge) für Eigentümer, Eigentümer-Gruppe und alle anderen (in der Reihenfolge) am besten erkennen, PHP benutzt für Zahlen standardmäßig das dezimale Format.
ich hab wieder keine zugriffe mit PHP auf den session ordner, ist da
irgendwo was kaputt?
Du erwartest nicht ernsthaft, dass hier irgendwer mit magischen Kräften auf den Server zugreifen kann, um zu schauen, ob du ihn vollends kaputtgespielt hast? Wende dich an den Serveradministrator, damit er das wieder hinbiegt.
Grüngrü.
Hi,
Du erwartest nicht ernsthaft, dass hier irgendwer mit magischen Kräften auf den Server zugreifen kann, um zu schauen, ob du ihn vollends kaputtgespielt hast?
das nicht, aber vll hat ja einer ne ahnung, vll. brauchst du mehr infos?
wenn ja welche? Wie gesagt Lunix, Apache.
Wende dich an den Serveradministrator, damit er das wieder hinbiegt.
also an mich? ich wills ja hinbiegen, aber irgendwie glaub ich bald das
es am session liegt. denn beim ersten aufruf klappt es immer, manchmal
aber dann nach nem logout aufeinmal nichtmehr. beende die session mit
session_destroy(); ist das falsch? im PHP Manual steht was davon das
cookies nicht mitgelöscht werden, eigentlich erstell ich keine aber wenn
doch welche erstellt werden wie bekomme ich das raus? wie kann ich das
verhindern und wie kann ich sie mitlöschen?
MfG
hi,
Wende dich an den Serveradministrator, damit er das wieder hinbiegt.
also an mich?
mein, an jemanden der diese bezeichnung auch verdient hat.
gruß,
wahsaga
Hi,
mein, an jemanden der diese bezeichnung auch verdient hat.
du willst sagen ich soll jetzt irgendwo, z.B. Siemens anrufen und den
serveradmin zu mir bestellen? das wird, wenn er überhaupt kommt zu teuer.
MfG
hi,
du willst sagen ich soll jetzt irgendwo, z.B. Siemens anrufen und den
serveradmin zu mir bestellen? das wird, wenn er überhaupt kommt zu teuer.
nein, aber du solltest die aufgabe, einen server zu administieren, jemandem überlassen, der etwas davon versteht.
dass du nicht so jemand bist, dürfte langsam offensichtlich sein.
(ich bin es auch nicht - deshalb spiele ich auch nicht an einem eigenen v- oder rootserver rum, sondern nutze shared hosting, wie viele andere auch.)
gruß,
wahsaga
Hi,
nein, aber du solltest die aufgabe, einen server zu administieren, jemandem überlassen, der etwas davon versteht.
dass du nicht so jemand bist, dürfte langsam offensichtlich sein.
das ist ja nur lokal, zum testen halt. kein "richtiger" server. nur zum
testen meiner skripte, das problem, das ich hatte, wozu ich das
gebraucht hätte hat sich schon längst erledigt, konnte aufm server wo
ich die sachen drauf hab nicht in nen ordner schreiben, hab da jetzt die
rechte anderweitig geändert.
MfG