xen*_*ide 28 command-line shell permissions
有一个命令,我认为它与 apache 一起提供,或者与它有某种关系,它检查权限,一直向下。所以,如果我有/home/foo/bar/baz,它会告诉我什么权限是baz,bar,foo,和home。有谁知道这个命令是什么或其他方法?该命令基本上从参数开始,它的工作方式是/让您知道一路上的权限是什么,以便您可以查看是否有权限问题。
Ste*_*n D 33
您可能想到的实用程序是namei命令。根据手册页:
Namei 使用其参数作为任何类型 Unix 文件(符号链接、文件、目录等)的路径名。Namei 然后跟随每个路径名,直到找到终端点(文件、目录、字符设备等)。如果它找到一个符号链接,我们会显示该链接,并开始跟踪它,缩进输出以显示上下文。
可以按如下方式接收您想要的输出:
$ namei -l /usr/src/linux-headers-2.6.35-22/include/
f: /usr/src/linux-headers-2.6.35-22/include/
drwxr-xr-x root root /
drwxr-xr-x root root usr
drwxrwsr-x root src src
drwxr-xr-x root root linux-headers-2.6.35-22
drwxr-xr-x root root include
Run Code Online (Sandbox Code Playgroud)
该namei命令是linux-util-ng软件包的一部分。有关更多详细信息,请参阅 手册页。
我不知道任何命令,但编写脚本很容易:
#!/bin/bash
ARG=$1
while [[ "$ARG" != "." && "$ARG" != "/" ]]
do
ls -ld -- "$ARG"
ARG=`dirname -- "$ARG"`
done
Run Code Online (Sandbox Code Playgroud)
例子:
$ perms.sh /tmp/1/2/3/hello.txt
-rw-rw-r-- 1 user group 0 Jan 14 16:59 /tmp/1/2/3/hello.txt
drwxrwxr-x 2 user group 4096 Jan 14 16:59 /tmp/1/2/3
drwxrwxr-x 3 user group 4096 Jan 14 16:43 /tmp/1/2
drwxrwxr-x 3 user group 4096 Jan 14 16:43 /tmp/1
drwxrwxrwt 12 root root 4096 Jan 14 17:02 /tmp
Run Code Online (Sandbox Code Playgroud)