Linux文件系统访问控制列表

来源:互联网 发布:sony摄像机数据恢复 编辑:程序博客网 时间:2024/06/06 03:46

Linux文件系统访问控制列表详解

    我们系统中的某用户在系统中所创建的文件的属主和属组分别是该用户的属主和基本组。

      wKioL1eYHQfy21neAAAaS3eTVMA014.png

     普通用户无法更改文件的属主和属组,因为普通用户没有相应的权限,无法执行chown命令。

      wKioL1eYHSyAKdJ4AAAXElLEe5I420.png

     当我们以某个用户的身份去登录我们的系统的时候,系统会给该用户返回一个shell进程,当该用户在访问某个文件的时候,一定是以该进程去访问文件的,这个进程的属主就是该用户,这个进程的属组就是该用户的基本组,该进程在访问文件的时候是以该用户的身份去访问的。

     

    文件系统访问控制列表

        FACL->Filesystem Acess Control List

        利用文件的扩展属性保存额外的访问控制权限


    用法格式:

        ->设定facl:利用-m选项

            设定用户的额外访问控制权限:setfacl -m u:username:perm filename

            wKioL1eYHVvTTwKRAAANeoqr-bI014.png

            设定组的额外访问控制权限:setfacl -m g:groupname:perm filename

            wKiom1eYHXLx4uroAAANJDG2P-k788.png

        ->取消设定facl:利用-x选项

            取消用户的额外访问控制权限:setfacl -x u:username

            取消组的额外访问控制权限:setfacl -x g:groupname

            wKioL1eYHaWApXP5AAAhtb9AD0o705.png

        ->查看facl:利用getfacl命令

            wKiom1eYHdPzZuRRAAAoRzDxgCM011.png

            facl中:

            ->user后面没有跟用户名表示的是文件属主的权限

            ->group后面没有跟组名表示的是文件属主的权限

            ->mask表示的是额外访问控制权限的最大权限,maks可自定义,自定义之后,额外访问控制权限的最大权限不得超过mask的权限,否则超出的权限会被裁掉。


        文件权限的应用次序

        当一个进程将要访问一个文件的时候(没有facl的情况下):

        1,首先应用Owner权限,当要访问的文件的属主和该进程的属主一致的情况下,就以该属主的权限去执行文件

        2,其次应用Group的权限,当要访问的文件的属组和该进程的属组一致的情况下,就以该属组的权限去执行文件

        3,最后应用Other的权限,如果Other有相应的权限的话,就以Other的权限去执行文件。


        当一个进程将要访问一个文件的时候(有facl的情况下):

        1,如果该进程的属主和要访问文件的属主不一致的话,那么就看要访问文件的facl的Owner是否和该进程的属主一致,一致的话就以facl的Owner的权限去执行文件。

        2,如果该进程的属组和要访问文件的属组不一致的话,那么就要看要访问文件的facl的Group是否和该进程的属组一致,一致的话就以facl的Group的权限去执行文件。

        3,否则应用Other的权限。


        一个有扩展属性的文件,权限位的最后一位有一个+号,这表示该文件有文件访问控制列表,文件访问控制列表里用的是文件的扩展属性,且此种文件在进行复制或归档的时候,文件的额外访问控制权限可能无法复制或归档,除非使用特殊的选项或命令。

        wKiom1eYHsyjhM30AAAWBNPrZGM101.png


        我们还可以在目录上设定额外的访问控制权限,设定之后,在该目录中所创建的文件自动继承某些用户或某些组的额外访问控制权限

        

本文出自 “菜鸟的技术文档” 博客,请务必保留此出处http://zhubo.blog.51cto.com/11395641/1830549

0 0