操作系统:Redhat5.8

1.基本权限 ugo ( r - w - x )

ugo分别代表:user group other

rwx分别代表:read write execute

````` 文件 ```````` 目录

r ` 浏览(cat)````` 浏览(ls)

w ` 编辑(vim)````` 创建/删除(touch,rm)

x ` 执行(script) ` 改变(cd)

1.1 当一个用户访问一个文件的时候:

  1. 如果当前用户的UID与文件owner的UID匹配,那么就遵守第一个三位组的权限,如果不匹配那么看GID

  2. 如果当前用户的GID与文件group的GID匹配,那么就遵守第二个三位组的权限

  3. 如果当前用户的UID与GID和文件的owner与group都不匹配,那么就看第三个三位组other的权限

2.默认权限与umask

默认情况下管理员的umask是022,普通用户的umask是002

ex:以文件默认权限是666,umask是033为例

  1. 666的权限是rw- rw- rw-,换算成2进制 110 110 110

  2. umask033 权限是 --- -wx -wx ,换算成2进制 000 011 011

  3. umask 2进制取反 000 011 011 -------->111 100 100

  4. umask 取反后的2进制和默认权限做与运算

    umask 111 100 100

    默认权限 110 110 110

    ---------------------------

    110 100 100

    rw- r-- r--

  5. 得到最终的权限 644

3.高级权限 SUID SGID Sticky

3.1可执行文件(SUID SGID)

执行可执行文件的时候,不以执行者的身份去运行,而是以文件所属人(组)的身份去执行

3.2目录(SGID Sticky)

SGID:当一个A目录具有SGID属性时,在这个目录下新建的文件或文件夹的默认所属组为A目录的所属组

Sticky:当A目录具有Sticky属性时,在A目录下的文件只有文件的所属人才能够删除文件,其他人即使对A目录有写权限也无法删除

=============================================================================

SUID对应的位置为owner中的x位,将x-->s;

SGID对应的位置为group中的x位,将x-->s;

Sticky对应的位置为other中的x位,将x-->t;

若原属性中不存在相应x位,则以大写字母显示

4.隐藏权限

只有具有超级权限的用户才具有使用该命令的权限

a:(appendOnly)

添加到文件,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件;

如果目录具有这个属性,系统只允许在这个目录下建立和修改文件,而不允许删除任何文件

i:(immutable)

添加到文件,系统不允许对这个文件进行任何的修改;

如果目录具有这个属性,则任何进程只能修改目录之下的文件,不允许建立和删除文件

5. 文件系统的访问控制列表facl

针对基本权限没有满足需求,又需要个别处理的相关用户进行的专项权限设定

ex:

setfacl -m (--modify) u:user:permission file | directory

setfacl -m (--modify) u:group:permission file | directory

setfacl -m (--modify) d:u:user:permission directory