zoukankan      html  css  js  c++  java
  • linux权限及归属管理

    linux权限及其归属管理

    1. 第一位:-/d:确认是文件/目录
    2. 后面都是三位一体:属主,属组,其他人,权限``
    3. 访问权限:
      (1)读权限r:允许查看文件内容
      (2)写权限w:允许修改文件内容
      (2)可执行x:允许运行程序(一般需要自己手动添加)
    4. ls -l 名字:查看归属,前面属主,后面属组
    5. 前面的字母及七进制表示:

    755是目录默认权限
    644是文件默认权限 (x权限一般只能手动)
    文件和目录的满权限都是777

    命令

    1. 设置或目录权限chmod
    • 格式:
      chomd -R ugoa +-=rwx 参数
      chomd -R nnn 参数
    • 选项:
      -R:表示以递归的方式设置目录及其下目录及文件的权限
      u:属主
      g:属组
      o:其他人
      a:所有人
      +:添加
      -:删除
      =:重置
    chmod ugo+r file1.txt #将档案 file1.txt 设为所有人皆可读取
    chmod ug+w,o-w file1.txt file2.txt  #将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
    #此外chmod也可以用数字来表示权限如 chmod 777 file
    #语法为:chmod abc file
    #其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
    r=4,w=2,x=1
    #若要rwx属性则4+2+1=7;
    #若要rw-属性则4+2=6;
    #若要r-x属性则4+1=7。
    #范例:
    chmod a=rwx file 
    chmod 777 file 
    chmod ug=rwx,o=x file 
    chmod 771 file 
    #效果相同
    #若用chmod 4755 filename可使此程序具有root的权限.
    #指令名称 : chown 
    #使用权限 : root 
    #使用方式 : 
    chmod [-cfhvR] [--help] [--version] user[] file... 
    
    1. chown命令:chown将指定文件的拥有者改为指定的用户或组
    • 格式
      chown [选项]... [所有者][:[组]] 文件...
    • 命令参数
      -c:显示更改部分信息
    chown root:nginx test/ #将test/更改为属主root,属组nginx
    chown root: test/ #将test/全部更改为root
    chown :root #将test/属组更改为root 
    
    1. umask命令:默认访问权限
      对于文件和目录来说, 最大的权限其实都是777,但是执行权限对于文件来说,很可怕,而对目录来说执行权限是个基本权限。所以默认目录的最大权限是777,而文件的默认最大权限就是666。
      对于root用户的umask=022这个来说,777权限二进制码就是(111)(111)(111),022权限二进制码为(000)(010)(010)。
    • 所有权限二进制的1:代表有这个权限
    • umask二进制1:代表要去掉这个权限,不管你原来有没有权限,你最终一定没有这个权限。
    • umask二进制的0:代表我不关心对应位的权限,你原来有权限就有权限,没有就没有, 我不影响你。
      一般为0000四位,需要改变的就是后面三位,表示rwx
    umask 777
    0777
    
    1. ACL权限设置:
      一个针对文件/目录的访问控制列表。它在UGO权限管理的基础上为文件系统提供一个额外的、更灵活的权限管理机制。
    • 针对用户和组设置权限
    sudo tune2fs -l /dev/sda1 |grep "Default mount options:"
    Default mount options:                 user_xattr    acl
    
    • 我们可以使用setfacl和getfacl命令来设置或观察文件/目录的acl权限。
      setfacl:
    setfacl [-bkRd] [{-m|-x} acl参数] 文件/目录名
    -m :配置后面的 acl 参数给文件/目录使用,不可与 -x 合用;
    -x :删除后续的 acl 参数,不可与 -m 合用;
    -b :移除所有的 ACL 配置参数;
    -k :移除默认的 ACL 参数;
    -R :递归配置 acl;
    -d :配置“默认 acl 参数”,只对目录有效,在该目录新建的数据会引用此默认值;
    

    getfacl:查看目录或文件的信息

    getfacl 文件/目录名
    getfacl -x 删除权限
    

    • 使用chmod暂时提高权限
      chmod 777 文件 暂时提高权限,
      其他用户也可以使用权限对非本用户内容进行操作
    • 设置 chmod 1777 将文件保护,使文件只有本人和root可以删除,其他用户补课对其进行操作
  • 相关阅读:
    Android Studio 单刷《第一行代码》系列 05 —— Fragment 基础
    Android Studio 单刷《第一行代码》系列 04 —— Activity 相关
    Android Studio 单刷《第一行代码》系列 03 —— Activity 基础
    Android Studio 单刷《第一行代码》系列 02 —— 日志工具 LogCat
    Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld
    IDEA 内网手动添加oracle,mysql等数据源,以及server returns invalid timezone错误配置
    eclipse maven设置
    IntelliJ IDE 常用配置
    eclipse maven 常见问题解决方案
    Maven 安装和配置
  • 原文地址:https://www.cnblogs.com/wml3030/p/15129243.html
Copyright © 2011-2022 走看看