如何更改目录的权限


8

我正在使用CentOS,我想知道如何更改其中包含多个文件的文件夹的权限。

我在root文件夹上使用了以下命令(假设文件夹= A):

chmod 777(主页/目录/ A)

chmod g + r(A)

如果我使用文件管理器将文件夹视为普通用户,则锁定图标不可见,表示已授予权限?但是文件夹A中的所有文件仍然显示一个锁定图标,表明文件夹A已被授予权限,而且其中没有子目录。

在所有子目录上运行上述命令将证明是一项非常艰巨的任务,因为它太多了。

谢谢!

Answers:


13

要设置文件夹和所有子文件夹/文件的权限,您需要在命令中使用递归选项:

chmod 777 -R /path/to/directory

有关使用chmod的更多信息,请参阅 这里

更新:

免责声明:使用chmod 777将使您的文件夹可供所有人使用。请看下面的设置

您的权限使用三个数字设置。

100是为文件的所有者
400阅读
200写
100执行

10是针对文件组的
40读
20写
10执行

1是给其他人的
4阅读
2写
1执行

在您的示例中,您将为所有者,组和每个人提供对文件的完全权限。例如,如果您希望授予所有者和组完全权限,但其他人只读取和执行权限,您将使用775。

如果您希望使用字母代表而不是数字,请参阅 这里


谢谢! Matthew解决了这个问题并提供了一个信息丰富的链接,刚刚收到书签:-)
Linux NewB

如果您发现这个有用,请标记为答案。
Gaurav Joseph

不会使文件夹中的所有文件都可执行吗?
stib

是的,但是从他的问题我收集到的是他想要的。我提供的链接将帮助他获得他的权限。既然你提到它我将更新我的答案,包括看看这个。
Matthew Williams

1

您可以使用chmod更改权限位。 -R选项用于递归 - 用于目录。这些位被解释为rwx,即读,写和可执行。如果r = 1,则w = 1且x = 1。二进制111表示十进制的7。因此,您会看到7.现在,字段被确定为u = user,group和其他字段。所以,如果你想给每个人一个权限,那你就做chmod -R 777 dir_name。另外,你可以说chmod -R a + rwx dir或者如果你想删除一些权限,那么你可以说chmod -R a-x dir - 这是为了删除可执行权限。

此外,你可以在chmod上做man了解更多细节。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.