Linux 权限,什么是 X?

9
如果我将751设置为一个目录的权限,那么它的权限是:drwxr-x--x 这里的“x”代表什么?如果我设置这个权限,那么这个目录对于任何人都可以访问,但只有所有者和所属组才能读取其内容?
请告诉我,谢谢。

1
这个问题可能更适合在http://superuser.com上提问;我很惊讶它只是被管理员“关闭”,而不是被移动到那里。 - akavel
4个回答

12

当目录设置了执行 'x' 权限时,会授予遍历其树结构以访问文件或子目录的能力,但是不能查看目录内文件的内容(除非设置了读取 'r' 权限)。(*)

因此在你的例子中,所有者、组和其他人都可以做任何事情,组可以进入目录并查看其中的文件列表(读取),其他人只能进入目录以访问子目录,但这样的权限几乎没有任何用处,如果没有 "read" 的话。

(*) 参见http://en.wikipedia.org/wiki/Filesystem_permissions#Permissions


如果“其他人”可以猜测目录结构的一般规律,并拥有“x”权限和好的字典,他们仍然可以获取该目录中一些文件的列表。 - Scrooge McDuck

10

x表示您可以使用cd命令进入该目录。r表示您可以使用ls命令查看该目录。


2
呵呵,是的,正如一个用户所描述的那样,而不是一个创作者。 - Johanna Larsson

4
这里的“执行权限”是指文件或目录所拥有的权限之一。对于一个目录来说,执行权限具有更有趣的含义,它表示您可以列出该目录中的文件。详见这里。根据我提供的链接:
请记住,要读取一个文件,您需要对包含该文件的目录具有执行权限以及对文件本身具有读取权限。要写入一个文件,您需要对目录具有执行访问权限并对文件具有写入访问权限。

3

x代表“可执行”。

在您的示例中,所有者可以读写目录,组用户只能读取,但每个人都可以进入。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接