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