zoukankan      html  css  js  c++  java
  • linux下文件权限更改(转载)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
    本文链接:https://blog.csdn.net/qq_33571752/article/details/83826758
    文件权限
    #####1.文件属性的查看
    ls -l filename

    -|rw-r--r--.|1| root| root|   46 |Oct  1 05:03 |filename
    — —————————  —  ————  ————    ——  ————————————  ————————
    1    2         3    4      5      6      7             8
    1."-":文件类型
    -    ##普通文件
    d    ##目录
    c    ##字符设备
    s    ##套接字
    p    ##管道
    b    ##快设备
    l    ##连接
    2."rw-r--r--":文件读写权限
    rw-|r--|r--
     u  | g | o
    u所有人的权限
    g所有组的权限
    o其他人的权限
    3."1":
    对文件:文件内容被系统记录的次数
    对目录:目录中文件属性的字节数
    4."root":文件所有人
    5."root":文件所有组
    6."46":文件内容的大小
    7."Oct  1 05:03":文件最后一次被修改的时间
    8."filename":文件名字
     

    ####2.文件所有人所有组的管理
    chown     username        file|dir    ##更改文件的所有人

    chgrp     groupname    file|dir    ##更改所有组

    chown -R username        dir        ##更改目录本身及里面所有内容的所有人
    chgrp -R groupname        dir        ##更改目录本身及里面所有内容的所有组


    监控命令
    watch -n 1 ls -lR /mnt
    ####3.文件普通权限####
    rw-|r--|r--
     u   g   o
    u:文件所有人对文件可以读写
    g:文件组成员对文件可读
    o:其他人对文件可读
    u优先匹配,g次优先,o=u,g不匹配时匹配
    1.r
    对文件:可以查看文件中的字符
    对目录:可以查看目录中文件的信息
    2.w
    对文件:可以更改文件内字符
    对目录:可以在目录中添加删除文件
    3.x
    对文件:可以运行文件内记录的程序动作
    对目录:可以进入目录中
    4.字符方式修改该文件权限
    chmod [-R] <u|g|o><+|-|=><r|w|x> file|dir    
    chmod u-x file1            ##file1拥有者去掉x权限
    chmod g+w file1            ##file1拥有组添加w权限
    chmod u-x,g+w file1        ##file1拥有者去掉x权,file1拥有组添加w权限
    chmod ugo-r file2        ##file2的用户组其他人去掉r权限
    chmod ug+x,o-r file3        ##file3用户和组添加x权限,其他人去掉r权限


    5.数字方式修改该文件权限
    在linux中
    r=4
    w=2
    x=1
    文件权限数字表示方式
    rw-|r--|r--
     u   g   o
    u=rw-=4+2+0=6
    g=r--=4+0+0=4
    o=r--=4+0+0=4
    所以文件权限表示为644
    chmod    修改后权限值    file
    chmod    777    file
    7=rwx
    6=rw-
    5=r-x
    4=r--
    3=-wx
    2=-w-
    1=--x
    0=---


    ####4.系统默认权限的设定####
    从系统存在角度来说,开放权力越大,系统存在意义越高
    从系统安全角度来说,开放权力越少,系统安全性越高
    所以系统设定新建文件或目录会去掉一些权限
    设定方式
    umask        ##查看系统权限默认umask值为022
    umask 077    ##修改该系统umask为077,此设定为临时设定,只当前shell中生效


    文件权限为:777-umask
    永久设定方式:
    vim /etc/bashrc        ##shell

    vim /etc/profile    ##系统

                                                                                      
     以上两个文件umask设定值必须保持一致
    source /etc/bashrc
    source /etc/profile
    设定立即生效
     

    ######5.文件的访问控制(acl列表)
    1.acl定义
    acl = access control
    指定特殊用户对特殊文件有特殊权限
    drwxrwx---+ 2 root root 17 Jul 18 01:39 /westos/
          ^
       表示/westos目录时有权限列表
    getfacl  /westos/
    # file: westos/        ##文件名称
    # owner: root        ##文件所有人
    # group: root        ##文件所有组
    user::rwx        ##拥有者权限
    user:student:rwx    ##特殊用户权限
    group::---        ##组权限
    mask::rwx        ##权限掩码
    other::---        ##其他人权限
    注意:当文件上有权限列表时,ls -l 能看到的权限是假的

    2设定acl列表
    ###设定##
    setfacl -m u|g:<usernamegroupname:权限    文件|目录
    -m    #设定
    u    #用户
    g    #组
    setfacl -m d:<u|g>:<username|groupname>:quanxian  mulu

    ##删除列表中的用户或者组####
    setfacl -x u|g:username|groupname    文件|目录
    ##关闭列表
    setfacl -b 文件|目录    
    ####acl 默认权限######
    当我们需求某个目录对于student可写,并且目录中新建的子目录对student也可写
    就要设定默认默认权限
    注意:    默认权限只对目录中新建立的文件或者目录生效,对已经建立的文件无效,
        对于目录本身也无效
    setfacl -m d:u:student:rwx  /westos

     
     
    ####6.特殊权限####
    1.suid        ##冒险位
    之针对二进制可执行文件,
    文件内记录的程序产生的进程的所有人为文件所有人
    和进程发起人身份无关
    设定方式:
    chmod u+s file
    suid=4
    chmod 4xxx file
    2.sgid        ##强制位
    对文件:只针对二进制可执行文件,
        任何人运行二进制文件
        程序时程序产生的进程的所有组都是文件的所有组
        和程序发起人组的身份无关
    对目录:当目录有sgid权限后,目录中新建的所有文件的所有组
        都自动归属到目录的所有组之中,和文件建立者所在的组无关
    设定方式:
    chmod g+s file|dir
    sgid=2
    chmod 2xxx file|dir

        
    3.sticky    ##粘制位
    t权限:
    只针对与目录,当一个目录上有t权限,那么目录中的文件只能被文件的拥有者删除
    设定方式:
    chmod o+t direcotry
    t=1
    chmod    1777 direcotry

    ————————————————
    版权声明:本文为CSDN博主「W_eirdo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_33571752/article/details/83826758

  • 相关阅读:
    jQuery
    编程英语
    Javaweb基础案例
    Maven-基础设置教程
    .Net微服务实践(三):Ocelot配置路由和请求聚合
    .Net微服务实践(二):Ocelot介绍和快速开始
    ASP.NET Core技术研究-探秘Host主机启动过程
    Docker安装手册
    HBase文档学习顺序
    考研学习笔记极限与连续笔记顺序
  • 原文地址:https://www.cnblogs.com/dancser/p/11827188.html
Copyright © 2011-2022 走看看