Steuern des Eigentums an UNIX-Verzeichnisinhalten durch Benutzergruppen

Steuern des Eigentums an UNIX-Verzeichnisinhalten durch Benutzergruppen

Ich möchte ein Verzeichnis erstellen, in dem jeder Benutzer eine Datei erstellen kann, aber nach dem Erstellen der Datei werden die Benutzer- und Gruppeneigentümerschaft für diese Datei auf vordefinierte Werte gesetzt. Ich weiß, dass es eine Möglichkeit gibt, dies mit GUID und UID zu tun, aber ich vergesse immer die chmod-Kombination.

Antwort1

Sie können dies für GID tun:

chgrp users /path/to/directory
chmod g+s /path/to/directory

Für die UID können Sie dies nicht direkt tun.

Sie könnten einen Cron-Eintrag schreiben, der von Zeit zu Zeit die folgenden Befehle ausführt:

chown -R user:group /path/to/directory
chmod -R 644 /path/to/directory

(Stellen Sie sicher, dass Sie das Dateisystem mounten, in dem sich /path/to/directory auf nosuid befindet, um einen Race Condition zu vermeiden, bei dem jemand eine Setuid-Shell in das Verzeichnis ablegt)

Antwort2

chown user:group file?

Antwort3

Es tut mir leid, das sagen zu müssen, aber bitte lesen Sie das Handbuch. Von chmod(1):

       Modes may be absolute or symbolic.  An absolute mode is an octal number
       constructed from the sum of one or more of the following values:

       4000    (the setuid bit).  Executable files with this bit set will
               run with effective uid set to the uid of the file owner.
               Directories with this bit set will force all files and sub-
               directories created in them to be owned by the directory
               owner and not by the uid of the creating process, if the
               underlying file system supports this feature: see chmod(2)
               and the suiddir option to mount(8).
       2000    (the setgid bit).  Executable files with this bit set will
               run with effective gid set to the gid of the file owner.
       1000    (the sticky bit).  See chmod(2) and sticky(8).
       0400    Allow read by owner.
       0200    Allow write by owner.
       0100    For files, allow execution by owner.  For directories,
               allow the owner to search in the directory.
       0040    Allow read by group members.
       0020    Allow write by group members.
       0010    For files, allow execution by group members.  For directo-
               ries, allow group members to search in the directory.
       0004    Allow read by others.
       0002    Allow write by others.
       0001    For files, allow execution by others.  For directories
               allow others to search in the directory.

verwandte Informationen