权限相关,怎么这么乱,无语

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

权限相关,怎么这么乱,无语

#1

帖子 chenhonjin » 2007-12-19 14:48

权限相关,怎么这么乱,无语
以下是某教程里面说明权限的其中一小段,我觉得头脑一片混乱如果r w x 用 4 2 1 代表,其它2两个用 4 2 代表,那为什么会得出以下结果!实在无语,上百度找了一下,很少网站有提到加 s 的问题...各位知道以下表示是否正确吗?

权限 r w x 分别用数字 4 2 1 表示, suid guid 用 4 2 表示,各个 triplet 的数字相加可得 mod 值。
eg: rwxr-xr-- 为 754,rwsr-xr-x 为 4755, rwsr-sr-x 为 6755 -rwxrwSr-- 为 2764
JIAN
帖子: 63
注册时间: 2007-01-13 14:55

#2

帖子 JIAN » 2007-12-19 17:01

是正确的
头像
hubert_star
论坛版主
帖子: 5373
注册时间: 2007-10-29 22:12
系统: OSX 10.9 + Ub 1304
来自: 江苏南京

Re: 权限相关,怎么这么乱,无语

#3

帖子 hubert_star » 2007-12-19 17:08

chenhonjin 写了:权限相关,怎么这么乱,无语
以下是某教程里面说明权限的其中一小段,我觉得头脑一片混乱如果r w x 用 4 2 1 代表,其它2两个用 4 2 代表,那为什么会得出以下结果!实在无语,上百度找了一下,很少网站有提到加 s 的问题...各位知道以下表示是否正确吗?

权限 r w x 分别用数字 4 2 1 表示, suid guid 用 4 2 表示,各个 triplet 的数字相加可得 mod 值。
eg: rwxr-xr-- 为 754,rwsr-xr-x 为 4755, rwsr-sr-x 为 6755 -rwxrwSr-- 为 2764
无语就好好看好好分析呗
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me
chenhonjin
帖子: 16
注册时间: 2007-11-08 8:51

#4

帖子 chenhonjin » 2007-12-19 18:23

有谁能解释一下这三句,


rwsr-xr-x 为 4755, rwsr-sr-x 为 6755 -rwxrwSr-- 为 2764

第一句rwsr-xr-x 中
rws=4+2+?
r-x=4+0+1
r-x=4+0+1
最终怎么会变成 4755 ?

第二句rwsr-sr-x 中
rws =4+2+?
r-s =4+0+?
r-x =4+0+1
最终又怎么会变成6755?

还有第三句
-rwxrwSr--
rwx = 4+2+1
rwS = 4+2+?
r-- = 4+0+0
这句又怎么理解为2764
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#5

帖子 BigSnake.NET » 2007-12-19 18:26

chenhonjin 写了:有谁能解释一下这三句,


rwsr-xr-x 为 4755, rwsr-sr-x 为 6755 -rwxrwSr-- 为 2764

第一句rwsr-xr-x 中
rws=4+2+?
r-x=4+0+1
r-x=4+0+1
最终怎么会变成 4755 ?

第二句rwsr-sr-x 中
rws =4+2+?
r-s =4+0+?
r-x =4+0+1
最终又怎么会变成6755?

还有第三句
-rwxrwSr--
rwx = 4+2+1
rwS = 4+2+?
r-- = 4+0+0
这句又怎么理解为2764
首先处理普通权限(rwx)

特殊权限是这样的

4: setuid
2: setgid
1: 黏附
当组权限没有x且setgid时, 就应用..忘了..
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
JIAN
帖子: 63
注册时间: 2007-01-13 14:55

#6

帖子 JIAN » 2007-12-19 18:39

chenhonjin 写了:有谁能解释一下这三句,


rwsr-xr-x 为 4755, rwsr-sr-x 为 6755 -rwxrwSr-- 为 2764

第一句rwsr-xr-x 中
rws=4+2+?
r-x=4+0+1
r-x=4+0+1
最终怎么会变成 4755 ?

第二句rwsr-sr-x 中
rws =4+2+?
r-s =4+0+?
r-x =4+0+1
最终又怎么会变成6755?

还有第三句
-rwxrwSr--
rwx = 4+2+1
rwS = 4+2+?
r-- = 4+0+0
这句又怎么理解为2764
第一句rwsr-xr-x 中
rws=4+2+1
r-x=4+0+1
r-x=4+0+1
所以后面是755 ,因为rws中的s,所以755前加个4,最后就是4755
第二句rwsr-sr-x 中
rws =4+2+1
r-s =4+0+1
r-x =4+0+1
所以后面是755 ,因为rws和r-s中都有s,所以755前加个6,最后就是6755
还有第三句
-rwxrwSr--
rwx = 4+2+1
rwS = 4+2+0
r-- = 4+0+0
所以后面是764,因为rwS中的S是大写,表示设置了guid,但该位的普通执行权限没有置位,所以是4+2+0,最后是2764
头像
stlxv
论坛版主
帖子: 8275
注册时间: 2006-05-03 0:39
来自: المريخ

#7

帖子 stlxv » 2007-12-19 18:47

这些害人的

LZ在文件上点右键,选择属性,然后点“权限”,你看看还乱不乱
PHP是最好的语言!不服来战!
lb_bn
帖子: 1261
注册时间: 2007-02-25 16:56

#8

帖子 lb_bn » 2007-12-19 18:50

http://bbs.chinaunix.net/viewthread.php ... pid2935137
设置s u i d:将相应的权限位之前的那一位设置为4;
设置g u i d:将相应的权限位之前的那一位设置为2;
两者都置位:将相应的权限位之前的那一位设置为4+2=6。
头像
luojie-dune
帖子: 22033
注册时间: 2007-07-30 18:28
系统: Linux
来自: 空气中

#9

帖子 luojie-dune » 2007-12-19 19:28

一般用户谁用那么多权限呢...

我暂且不关心.
『这个世界都是我的 ,我爱你们』

ENTP ⥂ INTP ⥄ INFP ⇦ INTJ

在此发布的文章使用 Creative Commons Attribution-ShareAlike 4.0 协议
chenhonjin
帖子: 16
注册时间: 2007-11-08 8:51

#10

帖子 chenhonjin » 2007-12-20 16:41

谢谢jian 的回答,基本上明白了,可是有一点还搞不清楚,大S与小s 的区别

以下是小s的说明:
在文件权限位的 owner triplet 第 3 个位置的字符如果设置为"s",称为 SUID。当某用户执行该文件时,系统
用文件 owner 的 uid 替代实际执行该文件的用户的 uid,文件会认为是 owner 在执行它。

在文件权限位的 group triplet 第 3 个位置的字符如果设置为"s",称为 SGID。当某用户执行该文件时,系统
用文件组拥有者的 gid 替代实际执行该文件的用户的 gid。当在某个目录文件上设置 SGID 时候,则在该目录
下的所有文件和子目录都会继承使用该目录的 GID 来代替实际执行者的 GID。

但却没有提到大S的作用!
能提示更详细的说明吗?或者有没有什么关于权限的好教程呢!

再次谢谢jian
JIAN
帖子: 63
注册时间: 2007-01-13 14:55

#11

帖子 JIAN » 2007-12-20 21:01

大写S和小写s的区别在于它相应的执行权限位有没有被设置
例如:一个权限为-rwxr-xr-x的文件
其设置了suid之后权限将变为-rwsr-xr-x
一个权限为-rw-r-xr-x的文件
其设置了suid之后权限将变为-rwSr-xr-x
guid的同理
大写S在suid和guid的设置中,是一种没有用处的设置,可以忽略它的存在
xiaomiao
帖子: 211
注册时间: 2007-11-12 10:37

#12

帖子 xiaomiao » 2007-12-21 9:16

关键是更改权限,更郁闷。右键我看到了权限,但是却改不了。
用终端,用chmod去改,结果无论如何输入路径都不正确,中了windows的毒了。
后来想到一个在windows中的方法,输入sudo chmod 777之后把文件直接拖到终端窗口,这回不提示路径错误了,执行完毕后回到窗口下,却发现权限根本没变。
头像
ydwfo
帖子: 30
注册时间: 2006-08-14 23:51

#13

帖子 ydwfo » 2007-12-21 13:39

lz喜欢钻牛角尖.不要生气了.电脑是不会出错的,原因只能在自己身上
ATI X1250 + 7.04-desktop-amd64
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#14

帖子 iblicf » 2007-12-21 14:03

Thanks APUE , Thanks , Richard
chenhonjin
帖子: 16
注册时间: 2007-11-08 8:51

#15

帖子 chenhonjin » 2007-12-21 18:39

OK,终于明白,谢谢
回复