控制 UNIX 目錄內容使用者群組所有權

控制 UNIX 目錄內容使用者群組所有權

我想建立一個目錄,任何使用者都可以在其中建立文件,但建立文件後,該文件的使用者和群組所有權將設定為預定義值。我知道有一種方法可以使用 GUID、UID 來做到這一點,但我總是忘記 chmod 組合。

答案1

您可以對 GID 執行以下操作:

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

您不能對 UID 執行此操作。直接地。

您可以編寫一個 cron 條目來經常執行以下命令:

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

(確保掛載 /path/to/directory 位於 nosuid 上的檔案系統,以避免有人將 setuid shell 放入目錄中的競爭情況)

答案2

chown user:group file

答案3

我很抱歉這麼說,但請 RTFM。從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.

相關內容