zoukankan      html  css  js  c++  java
  • linux文件权限

    1. 如何知道我对当前的文件有何权限

      1. 你是谁 通过哪个用户登录的系统
      2. 通过系统用户来对应文件的属主 属组
      3. 通过属主属组的权限来判断我们对文件的权限
    

    2. 权限表示方法

    表示方法1
    R  read    可读   cat  less
    W  write   可写   vim echo sed
    X  execute 可执行 ./1.sh /root/1.sh
    
    表示方法2
    R  4
    W  2
    X  1
    -  0
    

    3. 如何使用数字计算当前的权限

      -rw-r--r--. 1 root root 1019 Nov 10 16:08 passwd
    
    前三位 属主 rw- 数字相加 420 6
    中三位 属组 r-- 数字相加 400 4
    后三位 其他用户 r-- 数字相加 400 4
      644权限
    

    4.如何修改权限

      chmod 修改权限
    

    4.1 使用rwx进行修改

      属主    user    u
      属组    group   g
      其他用户   other  0
    
     1)修改oldboy.txt 文件属主权限为 rwx
          [root@oldboyedu ~]# ll oldboy.txt
          -rw-r--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
          [root@oldboyedu ~]# chmod u+x oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          -rwxr--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
          ------------------------ 先清空在赋值新的权限
          [root@oldboyedu ~]# chmod u=x oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          ---xr--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    		
          [root@oldboyedu ~]# chmod u=rwx oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          -rwxr--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    	
          取消执行x权限
          [root@oldboyedu ~]# chmod u-x oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          -rw-r--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    
    2) 修改oldboy.txt 文件属主属组同时去掉r权限
          [root@oldboyedu ~]# chmod ug-r oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          --wx---r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    
    3)属组 属组 其他用户同时加上r权限
          [root@oldboyedu ~]# chmod ugo+r oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          -rwxr--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    
    	
          同时去掉r权限	
          [root@oldboyedu ~]# chmod a-r oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          --wx------ 1 root root 10 Nov  9 09:09 oldboy.txt
    
          同时加上r权限 所有位置
          [root@oldboyedu ~]# chmod +r oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt 
          -rwxr--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    

    4.2 使用数字方式授权

          [root@oldboyedu ~]# # 修改文件权限为rw-r--r--
          [root@oldboyedu ~]# # 对应的数字    644
          [root@oldboyedu ~]# chmod 644 oldboy.txt
          [root@oldboyedu ~]# ll oldboy.txt
          -rw-r--r-- 1 root root 10 Nov  9 09:09 oldboy.txt
    
          [root@oldboyedu ~]# # 修改文件权限为r-x-rw-rwx
          [root@oldboyedu ~]# # 对应的数字 567
          [root@oldboyedu ~]# chmod 567 oldboy.txt 
          [root@oldboyedu ~]# ll oldboy.txt
          -r-xrw-rwx 1 root root 10 Nov  9 09:09 oldboy.txt
    

    4.3 扩展

    为什么默认创建的文件权限为644 目录 755
          umask
    	   
    [root@oldboyedu ~]# umask 
    0022
    [root@oldboyedu ~]# # 文件默认644  文件和目录最高权限 减掉umask 等于默认权限
    

    5. rwx的真正含义

    5.1 rwx对于文件的含义

    r对于文件的作用
          1.可读
          2.不能写入
          3.不可执行
          4.可强制写入执行
    	
    w对于文件的作用
          1.不能查看文件内容
          2.不能使用vim编辑内容 只能使用echo命令追加内容
          3.不能执行
          4.如果强制写入 但是会覆盖源内容
          PS: r和w配置使用 有读写权限
    	
    x对于文件的作用
          没任何权限
          想要执行必须和r同时使用
          PS:r和x配合使用
    

    5.2 rwx对于目录的含义

    r对于目录的含义
          1.无法进入目录
          2.只能看到文件名称 无法查看详细属性
          3.不能写入内容
          4.不能删除
          PS: r和x配合使用 可进入 可查看文件内容 无法删除 无法写入创建
          目录的默认的权限 对属组 陌生人====755
    	
    w对于目录的含义
          1.无法进入目录
          2.无法查看目录的内容
          3.无法写入 创建文件
          4.无法删除
          PS: wx配合可以创建文件 不能查看 文件详细信息 可以查看文件内容
          rwx配置使用拥有最高权限
    	
    x对于目录的含义
          1.可以进入目录 cd
          2.无法查看内容
          3.无法创建文件目录
          4.无法删除
          PS: r和x配置使用
    
    案例
    
    oldboy用户操作
    
    1.无法编辑/etc/passwd 文件 
          [root@oldboyedu oldboy]# chmod o+w /etc/passwd
          [root@oldboyedu oldboy]# ll /etc/passwd
          -rw-r--rw- 1 root root 1227 Nov 10 12:03 /etc/passwd
          [root@oldboyedu oldboy]# chmod o-w /etc/passwd
    
    2.为什么无法在/etc/下创建文件或目录
          [root@oldboyedu oldboy]# ll -d /etc
          drwxr-xr-x. 83 root root 8192 Nov 10 12:03 /etc
          [root@oldboyedu oldboy]# chmod o+w /etc
          [root@oldboyedu oldboy]# ll -d /etc
          drwxr-xrwx. 83 root root 8192 Nov 10 12:03 /etc
          [root@oldboyedu oldboy]# chmod o-w /etc
    
    3.为什么无法查看进入/root目录 默认权限550
          dr-xr-x---. 4 root root 4096 Nov 11 09:19 /root
    
    4.为什么可以在/tmp目录下创建文件
          [root@oldboyedu oldboy]# chmod 777 /tmp
          [root@oldboyedu oldboy]# ll -d /tmp
          drwxrwxrwx. 15 root root 4096 Nov 11 11:08 /tmp
          [root@oldboyedu oldboy]# chmod o+t /tmp/
          [root@oldboyedu oldboy]# ll -d /tmp
          drwxrwxrwt. 15 root root 4096 Nov 11 11:11 /tmp
    

    5.3 扩展: 文件隐藏权限

      12位权限
      s  === 4
      g  === 2
      o  === 1
    
    [root@oldboyedu etc]# chmod u+s /usr/bin/rm
    [root@oldboyedu etc]# ll /usr/bin/rm
    -rwsr-xr-x. 1 root root 62952 Oct 31  2018 /usr/bin/rm
    		
    [root@oldboyedu etc]# chmod u-s /usr/bin/rm
    [root@oldboyedu etc]# ll /usr/bin/rm
    -rwxr-xr-x. 1 root root 62952 Oct 31  2018 /usr/bin/rm
    
    文件权限 隐藏权限
          a  # 只能追加内容到文件中 只能echo 不能删除 不能修改
          i  # 啥都干不了 保护文件 增强文件安全性 无敌的
          查看使用 lsattr
          设置权限 chattr
    		
    [root@oldboyedu ~]# lsattr 1.txt
    ---------------- 1.txt
    
  • 相关阅读:
    js遍历删除对象的key
    MYBATIS XML SQL 结果为MAP类型时,KEY为大小问题解决
    Ubuntu SSH 失败
    Navicat 连接 Oracle Docker容器镜像报错:TNS:listener: all appropriate instances are blocking new connections
    Mybatis 定义 Oracle 存储过程,并获取存储输出字符串信息
    python基础之---else(十)
    python基础之---循环简介(九)
    python基础之---条件语句(八)
    python基础之---运算符(七)
    python基础之---转换数据类型(六)
  • 原文地址:https://www.cnblogs.com/hsqKTm/p/13960259.html
Copyright © 2011-2022 走看看