2

我在设置 Apache 服务器(Ubuntu Server 12.04 LTS)上的权限时遇到了一些问题。我将目录移动到我的主目录。我能够授予该目录的 apache 权限。但是,它不适用于子目录。

有没有办法将权限应用于所有子文件夹?

我对 Ubuntu Server 还很陌生,希望能得到帮助。

4

2 回答 2

1

chown -R www-data:www-data /home/

http://en.wikipedia.org/wiki/Chown

你也可以试试@mjgpy3 的建议

于 2012-09-08T20:38:07.283 回答
0

我想你想要的是:

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 读取、写入和执行。那些不是用户的人只能阅读和执行它。

如果我的解释对您没有意义,这里是一个外部来源。

于 2012-09-08T20:33:53.980 回答