Verzeichnisrechte bei mkdir stimmen nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Verzeichnisrechte bei mkdir stimmen nicht

    Hallo,

    warum erzeugt ein Aufruf (als user root) von:
    PHP-Code:
    php -"mkdir('./test', 0777);" 
    nur das hier:
    PHP-Code:
    drwxr-xr-x    3 root     root          443 Aug 30 11:42 test

  • #2
    umask()

    Kommentar


    • #3
      1. wie kommst du drauf, dass php unter root ausgeführt wird?
      2. wie kommst du dazu, dass php unter root ausgeführt wird?

      Kommentar


      • #4
        Original geschrieben von penizillin
        1. wie kommst du drauf, dass php unter root ausgeführt wird?
        2. wie kommst du dazu, dass php unter root ausgeführt wird?
        ich hab auch so eine befürchtung, aber da er da ja php über die shell ausführt muss es noch nichts heißen...

        Kommentar


        • #5
          :-) Keine Panik, ich habe in der Tat, wie auch eingangs geschrieben, das PHP in einer root-Shell ausgeführt. Aber nur um zu sehen woran es liegt. Natürlich wirkt auch in einer Root-Shell die umask(), das ist schon klar.

          Verwundert hat mich nur das die explizite Angabe einer Permission im mkdir() diese nicht einstellt, ein chmod() aber sehr wohl. Das finde ich auch weiterhin komisch.

          Kommentar


          • #6
            Und ich frage mich:
            Warum muß es 0777 sein?
            Meist reicht doch 0755 völlig, zumindest auf gut konfigurierten Servern.
            Ein modernes suPHP würde sogar Scripte aus 0775 Dirs verweigern!!!
            Bei mir reicht ein 0750 völlig aus, damit der Apache lesen und PHP lesen+schreiben kann.
            Wir werden alle sterben

            Kommentar


            • #7
              Original geschrieben von combie
              Und ich frage mich:
              Warum muß es 0777 sein?
              Meist reicht doch 0755 völlig, zumindest auf gut konfigurierten Servern.
              Warum beisst ihr euch so an den Rechten? Also, zur Klärung: ich benutze PHP nicht nur für websites, sondern auch für andere Programme. Dazu führe ich es in der Kommandozeile aus. Eines dieser Programme soll Verzeichnisstrukturen für SAMBA-User anlegen und da möchte ich bestimmte Rechte einstellen.

              Jetzt klar?! :-)

              Kommentar


              • #8
                Ja!
                Jetzt ist es klarer!
                Wir werden alle sterben

                Kommentar


                • #9
                  Eines dieser Programme soll Verzeichnisstrukturen für SAMBA-User anlegen und da möchte ich bestimmte Rechte einstellen.
                  Nicht das da Shell-Skripte nicht sinnvoller wären ...
                  Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                  Kommentar


                  • #10
                    Original geschrieben von Dr.Speck
                    Verwundert hat mich nur das die explizite Angabe einer Permission im mkdir() diese nicht einstellt, ein chmod() aber sehr wohl.
                    Im Manual zu mkdir() steht "the mode is also modified by the current umask". chmod() ist die Möglichkeit, die umask zu umgehen. Das hat schon so seinen Sinn.

                    Kommentar

                    Lädt...
                    X