分页: 1 / 1
谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 14:00
由 me
读和写权限明白,但是可执行就搞不懂了,既然文件都可读了,用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
还有目录的可执行权限更让我糊涂了。鸟哥的私房菜看过了,还是不明白。
哪位好心人讲解一下吧

Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 14:03
由 懒蜗牛Gentoo
文件有可执行权限,就相当于windows下文件扩展名为exe,说明是可执行文件。
目录有可执行权限就是可以进入该目录。
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 14:06
由 me
谢谢LS
等于没说

Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 14:11
由 懒蜗牛Gentoo
厄……还哪里不明白?
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 14:16
由 BigSnake.NET
读和写权限明白,但是可执行就搞不懂了,既然文件都可读了,用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
有区别,所有者变了
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 17:51
由 自由建客
目录的 x 位为遍历权。若无对某目录的遍历权,则将无法访问该目录及其子目录下的任何东西,因为 Linux 没有跳过遍历检查。
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-14 17:53
由 lwbskfish
复制完别人的文件不能改权限

Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-15 5:28
由 aerofox
me 写了:读和写权限明白,但是可执行就搞不懂了,既然文件都可读了,用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
对于大部分文件来说,是这样的。所以你可以看一下,系统中的文件权限一般要么是 rwxr-xr-x,要么是 rw-r--r--。
但是为什么要有执行权限?让它跟读权限统一行不行?不行。如果你在一个文件中记录一条命令(也许只是怕自己忘了):rm -rf *,如果没给这个文件加上执行权限,那么你直接用文件名或者在文件管理器中双击它都不会运行。但是如果加上执行权限,就可能意外运行它产生不良后果。所以,不要随便给文件加上执行权限。
还有些情况下复制过来加执行权限是无效的。一种情况就是 setuid 和 setgid 的文件,带这种权限的执行文件中执行时,有效用户标识和组标识是文件的所有者,不是运行它的用户,复制过来情况就不同了。这种文件的例子有 sudo 和 passwd 等。另一种情况是在受限 shell 中,用户只能执行 PATH 中指定路径下的文件,并且不能修改 PATH,所以复制过来无效。
me 写了:还有目录的可执行权限更让我糊涂了。鸟哥的私房菜看过了,还是不明白。
目录的可执行权限表示可搜索,但是这么说还是很难明白,还是举个例子吧。
建一个目录名为 dir,下面有文件 file,文件 file 的有可读的权限。
如果 dir 有 r 权限,那么你可以用 ls 命令看到它下面有 file 文件。但是如果 dir 没有 x 权限,即使你知道有 dir/file,你也无法查看 file 的内容。
如果 dir 有 x 权限,那么你可以查看 dir/file 的内容。但是如果 dir 没有 r 权限,你也许不知道它下面有这个文件。
所以如果你给各级目录都赋上 rwx--x--x 权限,那么别人只有知道你的某个文件的完整路径才能访问它。
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-15 5:44
由 xhy
代码: 全选
APUE2 4.5节
没有比这个讲的更清楚的了
Re: 谁能解释下文件和目录的可执行权限?
发表于 : 2009-07-15 5:46
由 xhy
用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
如果有setuid,setgid等 就不同了