我在设置 Apache 服务器(Ubuntu Server 12.04 LTS)上的权限时遇到了一些问题。我将目录移动到我的主目录。我能够授予该目录的 apache 权限。但是,它不适用于子目录。
有没有办法将权限应用于所有子文件夹?
我对 Ubuntu Server 还很陌生,希望能得到帮助。
我在设置 Apache 服务器(Ubuntu Server 12.04 LTS)上的权限时遇到了一些问题。我将目录移动到我的主目录。我能够授予该目录的 apache 权限。但是,它不适用于子目录。
有没有办法将权限应用于所有子文件夹?
我对 Ubuntu Server 还很陌生,希望能得到帮助。
我想你想要的是:
chmod -R <mode> <root>
这将递归地将权限从 a 更改<root>
为每个子目录和文件。设置时要非常小心<mode>
。<mode>
是一个介于 000 和 777 之间的数字,指定模式,并且<root>
是您要更改其权限的所有文件/文件夹的父级。
更新
如我上面所说,要指定<mode>
您需要提供一个 3 位数字,每个数字都是 0-7 包括在内。这些数字中的每一个都指定了一个不同的组(如果您愿意的话)。第一个表示当前用户,第二个表示用户组,第三个表示世界其他地方。现在,实际数字本身指定了他们各自的组将被授予哪些特权;这是用二进制完成的。RWE(读、写和执行)是文件的可用权限。
因此,考虑数字 5。
二进制中的 5 是 101,这表示 5 指定 RE,即读,不执行和写。如您所见,1 表示已启用权限,而 0 表示已禁用。
所以,这里有一些常见的用途和它们的含义:
chmod 777 file.txt
file.txt
现在所有可能遇到该文件的人都可以读取、写入和执行。
一个更常用的例子是:
chmod 755 file.txt
这表示(因为 7 在二进制中是 111)文件的所有者(可能就是你)可以用它做任何他们想做的事情,IE RWE,IE 读取、写入和执行。那些不是用户的人只能阅读和执行它。
如果我的解释对您没有意义,这里是一个外部来源。