• 特殊权限语法


    基本权限UGO

    u 所属主 g 所属组 o 其他人

    r (4)读 read w(2)写 write x(1)执行 execute

    针对文件:

    ​ r 读 是否允许可以查看文件的内容

    ​ w 写 能够修改或删除文件的内容

    ​ x 执行 是否可以执行该文件

    一个用户是否能够删除一个文件,判断依据是该用户对该文件所在的目录是否有写的权限

    针对目录:

    ​ r 读 是否允许可以查看目录里的列表

    ​ w 写 是否能够删除,重命名目录下的文件和修改目录下文件的属性等

    ​ x执行 是否可以进入到该目录

    正常操作一个目录,至少应该保证r-x


    修改权限

    chmod ,修改文件的权限 -R (递归修改)把目录以及目录里的所有子对象都更改
    语法:
    单独修改一个位置的权限

    chmod u-x filename ----将用户的访问或执行权限减去

    chmod [u|g|o|a]+-=rwx filename

    [root@anuo ~]# chmod g=rwx /shared/sysadmin
    
    [root@anuo ~]# chmod o=--- /share/sysadmin

    修改文件权限语法
    chmod [-R] <a|u|g|o> +-= rwx- /<path>/filename
    chmod [-R] 755 /<path>/filename

    [root@anuo ~]# chmod 750 /home/harry
    
    [root@anuo ~]# chmod 510 /home/harry/test -R
    
    [root@anuo ~]# chmod 770 /shared/sysadmin

    修改文件属性

    chown 作用:修改文件拥有者和所属组

    语法格式:
    1:chown USER:GROUP /<path>/filename ----修改用户和属组
    chown USER /<path>/filename ----单独修改用户
    chown :GROUP /<path>/filename ----单独修改属组

    ​ 2:chown USER.GROUP /<path>/filename ----修改用户和属组
    chown .GROUP /<path>/filename ----单独修改属组

    -R选项:递归(目录下的所有内容全部更改,否则只修改目录)

    [root@anuo Desktop]# chown harry:harry /root/Desktop/test        ----修改用户和组
    drwxr-xrwx  2 harry harry   4096 7月  13 14:32 test
    
    [root@anuo Desktop]# chown root /root/Desktop/test               ----修改用户
    drwxr-xrwx  2 root harry   4096 7月  13 14:32 test
    
    [root@anuo Desktop]# chown :root /root/Desktop/test              ----修改组
    drwxr-xrwx  2 root root    4096 7月  13 14:32 test
    
    [root@anuo Desktop]# chown .test /root/Desktop/test              ----修改组

    umask默认权限(遮罩权限)

    用户创建创建对象的默认权限,是由umask来决定的。

    root用户:#umask 0022
    普通用户:#umask 0002

    目录默认权限是777

    普通用户创建目录的默认权限: 777 - 002 = 775

    root用户创建目录的默认权限: 777 - 022 = 755

    文件默认权限最大权限是666

    普通用户创建文件的起始权限:666 - 002 = 664

    root用户创建文件的起始权限:666 - 022 = 644

    umask + 权限= 临时在当前 终端下更改umask值
    
    修改 ~/.bashrc 只针对当前用户永久修改 umask值
    
    修改 /etc/bashrc 针对所有所用户永久修改umask值

    特殊权限

    冒险位(setuid) u+s 4000 临时拥有所属主的权限,作用在属主上, 针对命令

    chmod u+s filename
    chmod 4755 filename

    [root@anuo ~]# chmod u+s /sbin/shutdown
    [root@anuo ~]# ll /sbin/shutdown
    -rwsr-xr-x. 1 root root 60400 5月  28 2013 /sbin/shutdown

    强制位(setgid) g+s 2000 任何人在该目录下创建的文件或目录都会强制继承父目录的的属组权限,针对目录。

    chmod g+s /shared/sysadmin
    chmod 2770 /shared/sysadmin
    
    [mary@desktop0 sysadmin]$ ll /shared/sysadmin/ -d
    drwxrws---. 2 root sysadmin 4096 7月  13 12:19 /shared/sysadmin/

    黏滞位(stick bit)o+t 1000 针对公共目录,这个目录下面的文件,只有root和创建人可以删除。

    chmod 777 /share/sysadmin
    chmod o+t /share/sysadmin 
    
    chmod 1777 /share/sysadmin

    访问控制列表 ACL

    ACL 是在普通权限、特殊权限、默认权限都不能实现时才使用。

    ACL是Access Control List的缩写

    ACL可以针对单个用户,单个文件或目录来进行r,w,x的权限设定,特别适用于需要特殊权限的使用情况。

    getfacl:查看文件/目录的ACL权限

    setfacl:设置文件/目录的ACL权限

    语法:setfacl [-bkRd][{-m|-x} acl参数] 文件名
    例:setfacl -R -m u:huangbing:rwx hb/ --(-R一定要在-m前面,表示目录下所有文件)

    选项: -m :设置后续的acl参数

    ​ -x :删除后续的acl参数

    ​ -b :删除所有的ACL设定参数

    ​ -R :递归设置acl参数

    ​ -d :设置预设的acl参数(只对目录有效,在该目录新建的文件也会使用此ACL默认值)

    ​ -k :删除预设的ACL参数

    例:setfacl  -x u:huangbing  hb/  --删除用户ACL:  
    
    例:setfacl  -b  hb/  --删除所以用户ACL

    注:文件设置ACL最大的权限取决于umask的值


    文件系统扩展属性

    chattr —— 设置文件不能删除(包括root)

    语法: chattr + 选项+文件

    选项:

    ​ +a 只能追加内容

    ​ +i 不能被修改

    lsattr 查看文件扩展属性

  • 相关阅读:
    一步一步开发sniffer(Winpcap+MFC)(五)莫道无人能识君,其实我懂你的心——解析数据包(转)
    boost.property_tree解析xml的帮助类以及中文解析问题的解决(转)
    boost.xml_parser中文字符问题 (转)
    关于#progma comment 中库文件相对路径问题
    关于VC预定义常量_WIN32,WIN32,_WIN64(转)
    VS2010环境下Winpcap配置方法 (转)
    开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo(转)
    libnids关于计算校验和引起的抓不到包的现象的解决方法
    LINK:fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 (转)
    用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(四)——Android端Http访问类(转)
  • 原文地址:https://www.cnblogs.com/duanlinxiao/p/10778765.html
Copyright © 2020-2023  润新知