一,文件隐藏属性 —— chattr,lsattr指令
(a)chattr —— 配置文件隐藏属性
(b)lsattr —— 查看文件隐藏属性
二,文件特殊权限—— SUID,SGID,SBIT
(a)SUID
(当s出现在文件拥有者的x权限上)
文件:
1、仅对文件有效,对目录无效
2、SUID权限仅对二进制程序有效
3、执行者对于该程序需要有x可执行权限
4、该文件在执行时,用户会暂时具有文件拥有者的权限
(b)SGID
(当s出现在目录或文件所属群的x权限上时)
由于SGID对文件和目录均有效,故需分成两个部分进行讨论
文件:
1、SGID权限仅对二进制程序有效
2、执行者对于该程序需要有x可执行权限
3、执行者在执行的过程中将会获得程序群组的支持
目录:
1、用户若对此目录具有r,x的权限时,该用户能够进入此目录
2、用户在此目录下的有效群组将会变成该目录的群组
3、若用户在此目录下具有w的权限(可以新建文件),则使用者所建立的新文件的群组与该目录群组一致。
用途:
用户在该目录下新建的文件之群组都会与该目录的组名相同
例题:(若此处难以理解,建议回看 Linux 改变文件的属性和权限 —— chgrp,chown,chmod)
PS:在步骤3中, 之所以 arod 可以删除 abcd ,是因为 arod 对 /srv/ahome 目录具有 w 和 x 权限。而无法编辑 abcd , 是因为 arod 对 abcd 只有 r 权限,而没有 w 权限。若将 abcd 加入 project 群组,即可对其进行编辑(命令:chgrp project abcd)
(c)SBIT
(当s出现在目录其他用户的x权限上时)
目录:
1、仅对目录有效,对文件无效
2、当用户在该目录下建立文件和目录,仅有自己与root才有权限删除该文件
三、SUID,SGID,SBIT权限设定
(a)数字类型改变文件权限和符号类型改变文件权限两种
权限分数对照,
SUID:4
SGID:2
SBIT:1
(b)符号类型改变文件权限
权限符号对照,
SUID:u+s
SGID:g+s
SBIT:o+t
PS:
当加入具有 SUID/SGID 的权限时,x 被 s 替换
当加入具有 SBIT 的权限时,x 被 s 替换
当不具有 x 权限时,SUID/SGID/SUID 权限为空,故用大写字母 S 和 T 表示。
参考书籍:
鸟哥的Linux私房菜