应该怎样学习linux权限

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

应该怎样学习linux权限

#1

帖子 xxdandan » 2007-03-31 1:17

应该怎样学习linux的权限,请大哥们指点。
应该从哪一方面开始入手,我是一只小菜鸟,不知如何下手。小弟先谢过啦。
希望大哥们指点迷津
头像
xrfang
帖子: 1116
注册时间: 2006-12-08 10:21

#2

帖子 xrfang » 2007-04-02 11:33

诶,UNIX的权限系统比windows简单的多得多。你知道ntfs的权限系统是怎么工作的吗?我正在工作中用这个,知道它太复杂了。而unix的权限系统我在大学1年纪学C语言的时候用HP/UX,老师就教过了。马上学会了。直到现在我没有忘记,也没有学新的概念。可以有把握的说我懂得了linux权限系统(使用方面)的70%-80%的知识。

简单的说一下:

对一个文件的操作有3种:读、写、执行

对系统用户的分类以文件拥有者的角度来分类也有3种:拥有者、与拥有者同组的用户、其他用户

以上两对关系相乘,得出9个组合,每个组合以一个2进制数(0,1)表示,如下:

o g w
rwx rwx rwx
111 101 101

以上,o=owner(拥有者); g=group(同组用户); w=world(其他用户)
r=read, w=write, x=execute

上面最后一排数字可以转化为8进制数755,就是我们所说的一个文件的权限。以这个例子而言,表示,文件的拥有者对这个文件具有读、写、执行的权限; 与拥有者同组的用户或者其他用户具有读和执行的权限,但没有写的权限。

以上就是权限系统的基本原理。而我所说的我自己没有把握解释的就是所谓的“setuid”,如果有高手可以补充一下。

如果你关心的不是这个知识,而是说“我为什么没有权限往/usr/local/bin下面添加或删除文件、为什么linux要sudo、为什么不是每个人都是root”等问题。建议闭关修炼,读读大部头,比如:操作系统原理、计算机安全等等。
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#3

帖子 BigSnake.NET » 2007-04-02 12:36

setuid

设置这个位的话,可执行文件执行时内核会将该进程的有效uid改成该文件拥有者的uid,而不是执行者的uid
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
xrfang
帖子: 1116
注册时间: 2006-12-08 10:21

#4

帖子 xrfang » 2007-04-02 13:43

多谢楼上指点,以前听到过不少解释,没有这么简单明了的。(希望是完全正确的) :lol:
回复