谁能解释下文件和目录的可执行权限?

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
me
帖子: 972
注册时间: 2007-09-14 19:51

谁能解释下文件和目录的可执行权限?

#1

帖子 me » 2009-07-14 14:00

读和写权限明白,但是可执行就搞不懂了,既然文件都可读了,用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
还有目录的可执行权限更让我糊涂了。鸟哥的私房菜看过了,还是不明白。
哪位好心人讲解一下吧 :em01
宪法 写了:第三十五条 中华人民共和国公民有言论、出版、集会、结社、囗囗、示威的自由。
以上内容完全是复制粘贴,请自行跨省追捕原作者,谢谢!
头像
懒蜗牛Gentoo
论坛版主
帖子: 7351
注册时间: 2007-03-02 17:36
系统: Linux Mint

Re: 谁能解释下文件和目录的可执行权限?

#2

帖子 懒蜗牛Gentoo » 2009-07-14 14:03

文件有可执行权限,就相当于windows下文件扩展名为exe,说明是可执行文件。
目录有可执行权限就是可以进入该目录。
虽然世上没有完美的东西,但这并不影响我们追求完美,因为只有偏执狂才TMD能成功。
10.04新手入门——笨兔兔讲述自己的故事
me
帖子: 972
注册时间: 2007-09-14 19:51

Re: 谁能解释下文件和目录的可执行权限?

#3

帖子 me » 2009-07-14 14:06

谢谢LS :em01
等于没说 :em06
宪法 写了:第三十五条 中华人民共和国公民有言论、出版、集会、结社、囗囗、示威的自由。
以上内容完全是复制粘贴,请自行跨省追捕原作者,谢谢!
头像
懒蜗牛Gentoo
论坛版主
帖子: 7351
注册时间: 2007-03-02 17:36
系统: Linux Mint

Re: 谁能解释下文件和目录的可执行权限?

#4

帖子 懒蜗牛Gentoo » 2009-07-14 14:11

厄……还哪里不明白?
虽然世上没有完美的东西,但这并不影响我们追求完美,因为只有偏执狂才TMD能成功。
10.04新手入门——笨兔兔讲述自己的故事
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 谁能解释下文件和目录的可执行权限?

#5

帖子 BigSnake.NET » 2009-07-14 14:16

读和写权限明白,但是可执行就搞不懂了,既然文件都可读了,用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
有区别,所有者变了
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

Re: 谁能解释下文件和目录的可执行权限?

#6

帖子 自由建客 » 2009-07-14 17:51

目录的 x 位为遍历权。若无对某目录的遍历权,则将无法访问该目录及其子目录下的任何东西,因为 Linux 没有跳过遍历检查。
lwbskfish
帖子: 323
注册时间: 2007-02-05 18:09

Re: 谁能解释下文件和目录的可执行权限?

#7

帖子 lwbskfish » 2009-07-14 17:53

复制完别人的文件不能改权限 :em06
aerofox
帖子: 1453
注册时间: 2008-05-24 8:30

Re: 谁能解释下文件和目录的可执行权限?

#8

帖子 aerofox » 2009-07-15 5:28

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 权限,那么别人只有知道你的某个文件的完整路径才能访问它。
头像
xhy
帖子: 3916
注册时间: 2005-12-28 1:16
系统: Ubuntu 12.10 X64
来自: 火星

Re: 谁能解释下文件和目录的可执行权限?

#9

帖子 xhy » 2009-07-15 5:44

代码: 全选

APUE2  4.5节

没有比这个讲的更清楚的了
目前负债150多万
头像
xhy
帖子: 3916
注册时间: 2005-12-28 1:16
系统: Ubuntu 12.10 X64
来自: 火星

Re: 谁能解释下文件和目录的可执行权限?

#10

帖子 xhy » 2009-07-15 5:46

用户可以把它复制过来,自己加权限,再执行,有什么区别吗?
如果有setuid,setgid等 就不同了
目前负债150多万
回复