ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux文件权限详解

Linux文件权限详解

原创 Linux操作系统 作者:lhrbest 时间:2020-05-18 08:44:43 0 删除 编辑

Linux文件权限详解


文件权限



一个文件用10个小格来记录文件的类型和权限。第一个小格表示文件的类型(文件、文件夹、连接),接下来的三个小格是拥有者(user)本身的权限,中间三个小格是和使用者同一组的成员(group)的权限,最后三个小格是表示其它使用者(other)的权限

r=4,w=2,x=1

若要rwx属性则4+2+1=7;

若要rw-属性则4+2=6;

若要r-x属性则4+1=5。

Linux文件权限详解

Linux系统中不仅是对用户与组根据UID,GID进行了管理,还对Linux系统中的文件,按照用户与组进行分类,针对不同的群体进行了权限管理,用他来确定谁能通过何种方式对文件和目录进行访问和操作。

一、文件权限

  1. 文件的权限针对三类对象进行定义

    owner 属主,缩写u

    group 属组,缩写g

    other 其他,缩写o

  2. 每个文件针对每类访问者定义了三种主要权限

    r:Read 读

    w:Write 写

    x:eXecute 执行

    另 X:针对目录加执行权限,文件不加执行权限(因文件具备执行权限有安全隐患)

    注意:root账户不受文件权限的读写限制,执行权限受限制

  3. 对于文件和目录来说,r,w,x有着不同的作用和含义:

    针对文件:

     r:读取文件内容
     
     w:修改文件内容
     
     x:执行权限对除二进制程序以外的文件没什么意义12345

    针对目录:目录本质可看做是存放文件列表、节点号等内容的文件

     r:查看目录下的文件列表
     
     w:删除和创建目录下的文件
     
     x:可以cd进入目录,能查看目录中文件的详细属性,能访问目录下文件内容(基础权限)12345

    权限

  4. 用户获取文件权限的顺序: 先看是否为所有者,如果是,则后面权限不看;再看是否为所属组,如果是,则后面权限不看。

二、修改文件访问权限的方法

  • chmod 修改权限 change mode

    方法1:mode法

    格式:chmod who opt per file

      who:u g o a(all)
      
      opt:+ – =
      
      per:r w x X12345

    方法2:数字法

    格式:chmod XXX file

      rwx rw- r–	
      111 110 100
      7   6   4
      
      r:4
      w:2
      x:11234567

    例:chmod 764 file 给file文件添加 rwxrw-r– 权限

    chmod -R +X dir 给dir目录添加X执行权限,dir目录下文件不添加执行权限

    (如果dir目录下有文件已具备执行权限,则添加该文件执行权限)

三、UMASK值

作用:取消对应的权限,影响创建文件和目录的默认权限

文件的默认访问权限为666,即-rw-rw-rw- ,创建目录的默认权限为777,即drwxrwxrwx ,
而umask值则表明了需要从默认权限中去掉哪些权限来成为最终的默认权限值。
对目录:	umask+default=777(dir)
对文件:666-umask:观察结果,如果有奇数,奇数位+1,偶数不变123

四、三种特殊权限suid、sgid、sticky(sticky权限工作环境中相对常用)

  1. suid

    作用:给一个用户继承二进制程序所有者拥有的权限

    suid权限位 位于所有者的执行权限位上,如果一个文件具有suid权限,则所有者执行位为s,文件表现为红色背景

     例:ll /usr/bin/passwd
     	-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd
     给file文件增加suid权限
     
     	chmod u+s file
     	
     	chmod 4755 file               suid数字法表示为412345678

    注: suid只适合作用在二进制程序上

  2. sgid

    作用1:给一个用户继承二进制程序所有组拥有的权限

    sgid权限位 位于所有组的执行权限位,如果一个文件具有suid权限,则所有组的执行位为s,文件表现为黄色背景

    例:ll `which cat`
    	-rwxr-sr-x. 1 root root 48568 Mar 23  2017 /bin/cat
    给file文件增加sgid权限
    	chmod g+s file
    	
    	chmod 2755 file               sgid数字法表示为212345678

    作用2:作用在目录上时,使一个目录下的新建的文件继承目录的所属组

  3. sticky

    作用:作用于目录上,此目录的文件只能被所有者删除

    sticky权限位 位于其他的执行权限位上,如果一个文件具有sticky权限,则其他的执行位为t,目录表现为绿色背景

    如:ll -d /tmp
    	drwxrwxrwt. 17 root root 4096 Apr  4 10:02 /tmp
    给dir目录添加sticky权限
    	chmod o+t dir
    	chmod 1777 dir                sticky数字法表示为112345678

五、ACL访问控制列表

作用:实现更加灵活的权限管理,打破了三类用户的权限管理

  1. 添加ACL权限

    setfacl -m u:wang:0 file 使wang账户对指定file文件无权限
    setfacl -m u:mage:rw file       使mage账户对指定file文件有读写权限
    setfacl -m g:g1:rw file 使g1组对指定file文件有读写权限
    getfacl     file                     查看指定file文件的ACL权限1234567

    ACL权限执行顺序类似于用户获取文件权限的顺序,getfacl顺序从上到下执行,一旦生效,下面的将不再生效(如果属于多个组,权限累加)

  2. 删除ACL权限

    setfacl -x u:wang file      删除wang账户对指定file文件的ACL权限
    setfacl -x g:g1 file   删除g1组对指定file文件的ACL权限123
  3. ACL权限下的mask

    设置用户对指定文件所能拥有的最大权限(限高作用)
    setfacl -m mask::r file             使指定文件file所拥有的最大权限位读r
    setfacl -x mask::r file               取消指定文件file的最大权限限制mask
    setfacl -b f1                      取消f1文件所有的ACL权限1234567

    ACL生效顺序:所有者、自定义用户、自定义组、其他人

  4. 备份和恢复ACL权限

    getfacl -R /tmp/dir1>acl.txt           将dir1目录下ACL权限备份
    setfacl -R –set-file=acl.txt /tem/dir      恢复dir1目录下ACL权限123

六、文件权限操作的常用命令

  • chown 设置文件所有者(普通用户无法修改文件所有者)

  • chgrp 设置文件所属组(普通用户要想该所属组,前提是文件所有者为自己,自己在所属组中)

  • chmod 设置指定文件权限

      -R     递归
      
      –reference=f1 f2 f3        参考f1文件权限设置f2,f3文件123
  • chattr 给指定文件添加保护,避免root账户误操作

      +i      锁定文件,不能删除,不能改名,不能更改内容
      
      -i      解锁+i
      
      -a     锁定文件,不能删除,不能改名,但可追加内容(追加重定向)
      
      -a     解锁+a
      
      +A    指定文件读时间atime不再更改123456789
  • lsattr 查看指定文件是否有锁定状态

  • setfacl 设置文件ACL权限

      -m mask::r file          使指定文件file所拥有的最大权限位读r
      
      -x mask::r file            取消指定文件file的最大权限限制mask
      
      -b f1                   取消f1文件所有的ACL权限
      
      -R –set-file=acl.txt /tem/dir   恢复dir1目录下ACL权限1234567
  • getfacl 查看文件ACL权限




About Me

........................................................................................................................

● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除

● 本文在itpub、博客园、CSDN和个人微 信公众号( DB宝)上有同步更新

● 本文itpub地址: http://blog.itpub.net/26736162

● 本文博客园地址: http://www.cnblogs.com/lhrbest

● 本文CSDN地址: https://blog.csdn.net/lihuarongaini

● 本文pdf版、个人简介及小麦苗云盘地址: http://blog.itpub.net/26736162/viewspace-1624453/

● 数据库笔试面试题库及解答: http://blog.itpub.net/26736162/viewspace-2134706/

● DBA宝典今日头条号地址: http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

........................................................................................................................

● QQ群号: 230161599 、618766405

● 微 信群:可加我微 信,我拉大家进群,非诚勿扰

● 联系我请加QQ好友 646634621 ,注明添加缘由

● 于 2020-05-01 06:00 ~ 2020-05-30 24:00 在西安完成

● 最新修改时间:2020-05-01 06:00 ~ 2020-05-30 24:00

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

........................................................................................................................

小麦苗的微店https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

小麦苗出版的数据库类丛书http://blog.itpub.net/26736162/viewspace-2142121/

小麦苗OCP、OCM、高可用网络班http://blog.itpub.net/26736162/viewspace-2148098/

小麦苗腾讯课堂主页https://lhr.ke.qq.com/

........................................................................................................................

使用 微 信客户端扫描下面的二维码来关注小麦苗的微 信公众号( DB宝)及QQ群(DBA宝典)、添加小麦苗微 信, 学习最实用的数据库技术。

........................................................................................................................

欢迎与我联系

 

 



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2692625/,如需转载,请注明出处,否则将追究法律责任。

全部评论
【QQ:646634621】【微信:db_bao】【微信公众号:DB宝】【11g、12c OCM】【QQ群:230161599、618766405】【《数据库笔试面试宝典》作者】【OCP、OCM、高可用(RAC+DG+OGG)、MySQL培训班已开讲,只讲实用内容】

注册时间:2012-09-23

  • 博文量
    1516
  • 访问量
    8774147