Linux基础概念-----Linux权限

权限对象:

属主:u

属组:g

其他人: o

所有人:a


Linux基本权限

    读:read 标识为:r 八进制标识为:4

    写:write 标识为:w 八进制标识:2

    执行:execution 标识为:x 八进制标识:1


特殊权限

setuid:仅对文件(可执行的二进制程序)有效,以文件的所有者身份执行 八进制表现为:4

[root@CentOS-10 tmp]# ls -l /usr/bin/passwd 

-rwsr-xr-x. 1 root root 30768 Feb 22  2012 /usr/bin/passwd

      passwd命令,普通用户没有权限执行,但每个用户都可以使用passwd修改自己的密码,因为passwd命令上有setuid,passwd命令的所有者是root,所以普通用户在执行passwd命令时,使用root的身份执行改命令。


setgid:仅对目录有效 八进制表现为:2

      任何用户在某个目录下建立的文件,文件的属组都属于该目录建立者所属的组


sticky(粘滞位):该权限可以理解成防删除权限 八进制表现为:1

           如果某个文件或目录不想让权限删除的用户删除,设置权限,就算用户有777权限,也无法删除该文件或目录

##################################################################

如果想设置setuid、setgid 、sticky(粘滞位)这些特殊权限,在原有3组8进制数字最前面再添加一组八进制

如4644,2755,1700就可以对目录或文件设置相关特殊权限

##############################################################

此段为转载:原文地址:http://www.cnblogs.com/qlwy/archive/2011/06/26/2121919.html

设置完这些标志后, 可以用 ls -l 来查看. 如果有这些标志, 则会在原来的执行标志位置上显示. 如

rwsrw-r-- 表示有setuid标志

rwxrwsrw- 表示有setgid标志

rwxrw-rwt 表示有sticky标志

那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 如果本来在该位上有x, 则这些特殊标志显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T)

################################################################

基本权限对目录和文件的影响

文件

    读:可以查看文件的内容

    写:可以更改文件的内容或删除文件(删除文件除了对文件有写的权限,还需要对文件所在的目录有写的权限)

    执行:可以将该文件发起成一个进程(Linux系统默认,文件都没有执行权限,)

    目录

      读:可以查看目录内的文件列表,如ls 该目录,但不能使用ls -l选项

      写:在目录内建立文件,可以删除目录本身(删除目录里面的文件,需要看文件的具体权限)

      执行:可以进入该目录,如ls -l 或cd进去

###################################################################################### 

UGO传统权限(rwx):只能一个用户,一个组和其他人

ACL: UGO权限的扩展

概权限可以自由控制每一个用户对同一个文件或目录的权限。

    如:text组里有tom和jak两用户,/tmp目录下有一个叫aa的文件,属主属组都属于root,其他人默认没有任何权限,需求是:tom对该文件有读写权限,jak对该文件只有读权限,而传统的UGO权限无法做到。

######################################################################################

[root@CentOS-10 ~]# getfacl aa 

# file: aa

# owner: root

# group: root

user::rw-

group::r--

other::r--

#########################################

以下是需求实现过程 

[root@CentOS-10 ~]# setfacl -m u:tom:rw aa 

[root@CentOS-10 ~]# setfacl -m u:jak:r aa 

[root@CentOS-10 ~]# getfacl aa 

# file: aa

# owner: root

# group: root

user::rw-

user:tom:rw-

user:jak:r--

group::r--

mask::rw-

other::r--

############################################

[tom@CentOS-10 tmp]$ echo tom >> aa 

[tom@CentOS-10 tmp]$ cat aa 

tom

[jak@CentOS-10 tmp]$ echo jak >> aa

-bash: aa: Permission denied

[jak@CentOS-10 tmp]$ cat aa

tom

############################################

setfacl  设置ACL权限位

getfacl  查看ACL权限位       

命令具体其他使用方法及其他相关解释,请man或者Google


本文出自 “悬剑” 博客,请务必保留此出处http://sublime.blog.51cto.com/8856101/1434127

Linux基础概念-----Linux权限,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。