控制UNIX目录内容用户组的所有权

我想创build一个目录,任何用户都可以创build一个文件,但创build文件后,该文件的用户和组所有权被设置为预定义的值。 我知道有一种方法可以用GUID,UID做到这一点,但是我总是忘记了chmod组合。

你可以这样做的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 /目录下的文件系统,以避免有人将setuid shell放入目录中的争用情况)

chown user:group file

我很抱歉地说,但请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.