linux的权限:顾名思义就是能够 让用户有权利访问指定的文件和目录 和没有权利访问指定的文件和目录

下面来看一下linux底下一般权限都有哪些

wKiom1UvgaKjh86oAAI4Qn18ZeE502.jpg

wKiom1UvgjvQUNcvAACwO3-oTo8976.jpg

下面来看一看linux当中 文件的特殊权限:

suid:临时让某些用户以管理员身份执行文件 以文件属主的权限执行 但是不能加参数 能够判定发起者的身份

例:-rwsr-xr-x. 1 root root 30768 Feb 22 2012 /usr/bin/passwd
    给suid权限        
    chmod u+s FILE...

sgid:   常用:目录设置SGID 所有用户在这个目录当中,创建文件 的属组为目录的属组
    chmod g+s FILE...

sticky:粘滞位

    chmod o+t FILE...

suid | sgid | sticky
4          2         1   

可以用数字来更改

例:chmod 7777 a.txt

-rwsrwsrwt.1 root root 5 Apr 16 09:52 a.txt

此文件代表有suid sgid以及粘滞位的权限

 

权限匹配:

检查属主-》检查访问列表的属主-》检查属组-》检查访问列表的属组-》检查其他用户-》检查访问列表其他用户

 

此外文件还有扩展属性可用    lsattr来显示 chattr来改变

a:文件内容不允许改 只能追加
c:压缩格式
d:没有备份
e:扩展格式
i:阻止管理员强行写入
j:数据日志
s:安全删除
t:不在尾部执行合并
A:不更新访问时间戳
u:阻止管理员也不能删除
D:目录同步更新
S:文件同步更新
T:目录设置为顶级目录

 

另外facl可以让用户有额外的访问机制

getfacl 显示访问列表

setfacl 设定访问列表
格式:

    setfacl -选项 u或者g:用户名或组名:权限 FILE...

选项:

    -m 添加额外访问授权

    -x 取消授权

    -R 递归设定(对于目录来设定)


总结:

    Linux的权限还是比较多且复杂的。这些只是些表面上的权限设定,具体还需读者自身man一下各个设定的命令以及用法。