linux的文件权限

79 篇文章 0 订阅

文件权限

1. 意义

通过文件权限控制用户对文件的访问。只有三种权限:读取,写入和执行。文件权限系统最底层安全设定方法之一。保证文件可以被可用的用户做相应操作

2. 文件权限的查看

ls  -l  file
ls  -ld  dir
ll  file
ll  -d  dir
例如:
在这里插入图片描述

3.文件权限的读取

 - |rw-rw-r–| 1 | kiosk | kiosk | 0 | Jul 21 09:18 | file
 [1]  [2]  [3]   [4]   [5]   [6]   [7]      [8]

  • [1]文件的类型
      -  空文件,或者文本
    在这里插入图片描述
     d  目录
    在这里插入图片描述
     l  软链接 快捷方式
     s  socket 套接字 接口
     b  block 块设备
     c  字符设备

  • [2]文件的权限
    rw-|rw-|r- -
    1  2 3
    1.[u] 文件所有者对文件的操作权限(具体操作含义请看5.如何改变文件权限)
    2.[g] 文件所有组对文件的操作权限(具体操作含义请看5.如何改变文件权限)
    3.[o] 其他人对文件能的操作权限(具体操作含义请看5.如何改变文件权限)

  • [3]对文件:文件硬链接个数(文件内容被记录的次数)
     对目录:目录中子目录的个数(下图可看到1目录中有三个子目录)
    在这里插入图片描述

  • [4]文件的所有人

  • [5]文件所有组

  • [6]对文件:文件大小
     对目录:目录中子文件元数据(matedate可以理解为文件的属性)大小

  • [7]文件的内容被修改的时间

  • [8]文件的名称

4.如何改变文件的所有人和所有组

chown或chgrp

chown   username file|dir  改变文件或目录的所有者
chown  user.group file|dir  改变文件或目录的所有组
chown -R user.group dir
例如:
在这里插入图片描述
chgrp group  file|dir
chgrp -R  group dir
例如:
在这里插入图片描述

5.如何改变文件的权限

  • 对权限的理解
    r
    对文件:查看文件中的内容 —>cat file
    对目录:查看目录中有什么子文件或者子目录 —> ls dir
    w
    对文件:改变文件里面的内容
    对目录:对目录中子目录或子文件的元数据进行更改,可创建和删除目录中的文件
    x
    对文件:可以通过文件名称调用文件内记录的程序,即执行文件
    对目录:可以进入目录

  • 更改方式
    chmod <u|g|o><+|-|=><r|w|x> file|dir
    chmod  u+x file|dir
    chmod  g-r  file|dir
    chmod ug-r file|dir
    chmod u-r,g+x file|dir
    chmod -r  123 三个都减,但是不能给w使用,w之能改变所有者权限(如下图)。
    chmod  o=r-x file|dir
    例如:
    在这里插入图片描述
    rwx
    210
    r=4  2的2次方
    w=2 2的1次方
    x=1  2的0次方
    r-x|r- -|- -x
    5 4 1
    chmod  541  /mnt/file1
    7=rwx
    6=rw-
    5=r-x
    4=r- -
    3=-wx
    2=-w-
    1=- -x
    0=- - -
    例如:
    在这里插入图片描述

6.umask

umask  系统建立文件是默认保留的权力
umask 077  临时设定系统预留权限为077
我们修改umask的方式有两种:

  • vim /etc/profile 中/umask 找到umask修改
    vim /etc/profile  系统配置文件

在这里插入图片描述
结束后source /etc/profile修改umask。

在这里插入图片描述

  • vim /etc/bashrc 中/umask 找到umask修改
    vim /etc/bashrc shell配置文件
    在这里插入图片描述
    source /etc/bashrc  让更改立即生效
    在这里插入图片描述

7.特殊权限

特殊权限对文件的影响对目录的影响
sticky(粘制位)无影响对目录具有写入权限的用户仅可以删除其所拥有的文件,而无法删除或强制保存到其他用户所拥有的文件
sgid(强制位)以拥有文件的组身份执行文件在目录中最新创建的文件为目录的组所有者
suid(冒险位)以拥有文件的用户身份来执行文件,而不是运行文件的用户无影响
  • sticky  粘制位
    设定方式:
    chmod o+t  dir
    chmod 1xxx   dir
    在这里插入图片描述
    上图中,超级用户设置了westos目录1777的权限,切换到westos普通用户后,westos用户可以在目录下创建并删除自己的文件,但不能删除root用户的。

  • sgid  强制位
    设定方式
    chmod g+s   file|dir
    chmod 2xxx  file|dir

  • suid  冒险位

    设定方式
    chmod u+s  file
    chmod 4xxx  file

8.acl权限列表

  • 作用
    让特定的用户对特定的文件拥有特定权限

  • acl列表查看
    -rw-rwxr- -+ 1 root root 0 Jul 21 15:45 file
         ^
    acl开启(setfacl…)

    getfacl file  查看acl开启的文件的权限
    file: file  文件名称
    owner: root  文件拥有者
    group: root  文件拥有组
    user::rw-  文件拥有人的权限
    user:kiosk:rwx  指定用户的权限
    group::r- -  文件拥有组的权力
    mask::rwx  能赋予用户的最大权力伐值
    other::r- -  其他人的权限

  • acl列表的管理
    setfacl -m u:username:rwx  file   设定username对file拥有rwx权限
    在这里插入图片描述
    setfacl -m g:group:rwx file     设定group组成员对file拥有rwx权限
    setfacl -x u:username file    从acl列表中删除username
    setfacl -b  file          关闭file上的acl列表
    在这里插入图片描述

  • mask值
    在权限列表中mask标示能生效的权力值
    当用chmod减小开启acl的文件权限时mask值会发生改变
    chmod  g-w westos
    如果要恢复mask值
    setfacl -m m:rw  westos
    在这里插入图片描述

  • acl的默认权限设定
    监控命令:watch  -n 1 getfacl  /mnt/
    acl默认权限只针对目录设定
    “acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限”

    setfacl -m d:u:student:rwx  /mnt/westos
    在这里插入图片描述
    去掉权限 setfacl -k   /mnt/westos

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值