Stefan Beyer: Chmod

Was bedeuten Chmod-Zeichen wie "+x" oder "a+w" in gewöhnlichen (bzw. mir bekannten) Chmod-Werten wie "755", "644" etc. ?

  1. Was bedeuten Chmod-Zeichen wie "+x" oder "a+w" in gewöhnlichen (bzw. mir bekannten) Chmod-Werten wie "755", "644" etc. ?

    Hallo, guck mal in mein UNIX -Eckchen, da steht so einiges über Dateirechte unter UNIX... und da gibt es auch ein Formular zum Berechnen des Oktal-Codes für "chmod"; Rolf

  2. Was bedeuten Chmod-Zeichen wie "+x" oder "a+w" in gewöhnlichen (bzw. mir bekannten) Chmod-Werten wie "755", "644" etc. ?

    Das ist recht einfach!
    Hier steht:
    x für eXecute
    r für Read
    w für Write

    mit den Zeichen (+,-,=) werden die Rechte vergeben!
    ...d.h.:

    • die Rechte werden hinzugefügt
    • die Rechte werden entfernt
      = die rechte werden ERSETZT

    und das u,g,o,a steht für USER,GROUP,OTHERS und ALL (ugo)

    Bedeutet:
    chmod u+rw => user-rechte READ und WRITE
    chmod o=rx => ALLE Benutzer READ und EXECUTE
    ...

    Gruß,

    Volker

    1. Danke für ausführliche Nachricht, aber wenn nun steht:
      chmod +x all the .cgi files

      Welcher Wert muss gechmodet werden? :)

      Stefan

      1. Danke für ausführliche Nachricht, aber wenn nun steht:
        chmod +x all the .cgi files

        Welcher Wert muss gechmodet werden? :)

        Stefan

        Auch dies ist recht einfach! ;-))) ...wie alles, wenn man es mal weiss! (siehe meine Frage oben! :-)) )

        a ist default => Vorgabe ist immer ALLE (ugo)

        chmod +x DEINE.DATEI
        ...oder hier konkret: chmod +x *.cgi
        entspricht: chmod a+x *.cgi

        Setzt folglich für ALLE execute Rechte....

        Gruß,

        Volker

      2. Danke für ausführliche Nachricht, aber wenn nun steht:
        chmod +x all the .cgi files
        Welcher Wert muss gechmodet werden? :)

        Aus der Sicht der Ausführbarkeit des Skripts (und *nur* aus dieser) jeder beliebige, der eben mindestens das "x"-Bit auf jeder der drei möglichen Positionen enthält (also alle ungeraden numerischen Werte).

        Der Vorteil der angegebenen Darstellung ist, daß im Gegensatz zur vollständigen Angabe aller Bits eben gerade nicht versucht wird, andere Bits zu ändern, wenn man sich der Konsequenzen nicht bewußt ist.
        Es könnte ja sein, daß ein Skript sowohl ausführbar sein muß (+x) als auch lesbar (z. B. weil es Konfigurationsdefinitionen enthält, die ein anderes Programm lesen muß) oder im Extremfall sogar schreibbar (weil ein anderes Skript Konfigurationswerte dort hineinschreibt - unschön, aber vorstellbar). Wenn Du nun "chmod 111" gesetzt hast, dann ist das besagte Skript selbst lauffähig, aber das andere Programm nicht mehr.