Chmod 允许目录的读写权限

Chmod 允许目录的读写权限

我在根目录中创建了目录。我正在寻找chmod允许所有用户对特定目录进行读写的命令。我已经chmod 775为文件完成了此操作,但我需要为目录执行此操作。这包括对所有文件和子目录的权限。

答案1

0775对于文件来说很少是正确的。下面将向适当的类型添加适当的所需权限,而不会干扰其他现有权限:

find somedir \( -type d -exec chmod u+rwx,g+rwx,o+rx {} \; -o -type f -exec chmod u+rw,g+rw,o+r {} \; \)

查看find 的手册页以帮助解释这一点。

答案2

为了全部用户拥有读写权限,这有点0777危险,特别是如果你正在运行网络服务器。就像@unwind 说的:

chmod -R 0777 /mydirectory将允许所有用户对该目录内的所有文件和文件夹进行读写访问

根据您的目的,您可能需要了解粘滞位,它允许所有用户创建新文件,但不允许删除或编辑目录中的其他文件:

chmod +t /mydirectory

另外,如果您不知道,man chmod将会显示该chmod命令的手册页,您可以通过输入搜索文本“recursive”/recursive

答案3

Unix 保护模型不是这样工作的,您不能递归设置权限。您需要在每个目录上设置权限,一直“向下”。

当然你可以这样做环境递归地,但这仅意味着“遍历并在下面的所有文件和文件夹上设置这些权限”,这不是我理解你的问题的方式。

为此,请使用-R 选项到 chmod:

$ chmod -R 0755 /my-cool-directory

相关内容