linux 特殊权限chattr(文件系统级别的权限) Attr 权限和 ACL访问控制列表 ...

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 特殊权限chattr(文件系统级别的权限) Attr 权限和 ACL访问控制列表 ...相关的知识,希望对你有一定的参考价值。

Attr 权限 和 ACL 访问控制列表


  • Attr 权限里的 “a” 权限和 “i” 权限
a :全名append only    
   只允许追加数据,不允许任何用户改动文件(超级用户也不行) 
   甚至不能正常的删除文件
   只能读取文件内容,只能用 “echo” 追加内容
   chattr +a xxx  #增加 a 权限
   chattr -a xxx  #取消 a 权限
   lsattr   #查看权限
[[email protected] /test]# touch abc    #自行创建一个 abc 文件
[[email protected] /test]# chattr +a abc/   #给 abc 加上 “a” 权限
[[email protected] /test]# lsattr       #查看 “a” 权限
-----a---------- ./abc      
[[email protected] /test]# echo "hello" >> abc  #可用“echo”把内容追加到 abc 文件中
[[email protected] /test]# vim abc      #编辑文件 

abc保存退出的时候会发现无法保存,只能退出不做修改;表示 “a” 权限只能对文件的追加而不能进行修改
技术分享图片

i :全名immutable  
    不允许对这个文件进行任何的修改(超级用户也不行)
    不能正常的删除文件
    只能读取文件内容,不能用 “echo” 追加内容
    chattr +i xxx  #增加 i 权限
    chattr -i xxx  #取消 i 权限
    lsattr  #查看权限
[[email protected] /test]# chattr +i abc    #给 abc 加上 “i” 权限
[[email protected] /test]# lsattr       #查看 “i” 权限
----i----------- ./abc
[[email protected] /test]# echo "hello" >> abc  #用“echo”把内容追加到 abc 文件中
-bash: abc: 权限不够        

权限不够,表示 “i” 权限的特性就是不允许做任何的修改删除,只能读取

  • ACL:访问控制列表

使用语法: setfacl -[选项] [权限设置] 操作对象
查看语法: getfacl 加路径

-m   设置一个ACL权限
-x   取消一个ACL权限
-b   清除所有的 ACL 权限

举个栗子:允许用户 rosen1 对 “/test/abc” 文件有读和写的权限;用户 rosen2 对 “/test/abc” 文件没有任何权限,其他人只有读的权限(用户自行创建)

[[email protected] /test]# setfacl -m u:rosen1:rw- /test/abc    # rosen1 读和写权限
[[email protected] /test]# setfacl -m u:rosen2:--- /test/abc    # rosen2 没有任何权限
[[email protected] /test]# chown zhang3 abc     #修改所有者为zhang3
[[email protected] /]# getfacl /test/abc 
# file: test/abc    #文件所在的路径
# owner: zhang3     #文件附加所有者
# group: root       #文件所属组
user::rw-           #用户权限
user:rosen1:rw-     # rosen1 读和写权限
user:rosen2:---     # rosen2 没有任何权限
group::r--          #用户所属组权限
mask::rw-           #除了 root 集体控制附加所有者的最大权限
other::r--          #其他人只读权限

mask 值作用:除了 “root 用户” 权限之外,其他的 ACL 用户和组(包括默认组),都会被mask 作用到

修改 “mask” 值: setfacl  -m  m:rwx /test/abc

以上是关于linux 特殊权限chattr(文件系统级别的权限) Attr 权限和 ACL访问控制列表 ...的主要内容,如果未能解决你的问题,请参考以下文章

五大权限:UGO权限SetUID SetGID StickyACL权限chattr(文件系统级别的权限)SELINUX

7.linux文件的特殊权限SUID,SGID,Sticky,chattr

Linux权限管理---特殊权限

Linux2.5隐藏权限及特殊权限

Linux 文件系统属性 chattr 权限 和 系统命令 sudo 权限

Linux笔记之lsattr chattr隐藏属性