Linux基本权限

时间:2022-06-20 14:18:26

  首先需要我们了解的是,权限(rwx)对于文件和目录的作用是不一样的 .

  • 权限对文件的作用
    • r : 读取文件内容(cat , more , head , tail)
    • w: 编辑、新增、修改文件内容(vi , echo)

      --不包含删除文件

    • x : 可执行
  • 权限对目录的作用
    • r : 可以查询目录下文件名(ll , ls)
    • w : 具有修改目录结构的权限。如新建文件和目录、删除此目录下文件和目录,重命名此目录下文件和目录,剪切(touch , rm , mv ,cp)
    • x : 可以进入目录 (cd)

  对文件来说最高权限是 : X

  对目录来说,最高权限是 : w

  分配文件基本权限时,核心原则:在最小权限情况下能够实现要求即可!

  • 修改文件所有者 : chown
    • chown 用户名  文件名
      • 例如 : chown zhangsan  test.txt
    • chown  用户名:组名  文件 (同时修改文件所有者和所属组)
      • 例如 : chown zhangsan:gro1 test.txt
  • 修改文件所属组 : chgrp
    • chgrp  组名  文件名
      • 例如 : chgrp  gro1 test.txt
  • 修改文件、目录权限 : chmod
    • chmod  [选项] 模式 文件名
      • 选项
        • -R : 递归
      • 模式
        • [ugoa][+-][rwx]
        • [mode=421]  : 8421码
    • 举例
      • chmod u+x test.txt   ,文件所有者添加执行权限
      • chmod g+w,o+w test.txt  , 文件所属组、其他用户添加可读权限
      • chmod a+rwx test.txt  ,文件所有者、所属组、其他用户均添加rwx权限

查看默认权限的命令

  • umask

  查看默认权限 : 0022

    • 第一位0 : 文件特殊权限
    • 022 : 文件默认权限
  • 文件默认权限
    • 文件默认不能建立为执行文件,必需手动赋予执行权限
    • 所以文件默认权限最大为 : 666
    • 默认权限需要换算成字母再进行减法运算
    • 建立文件之后的默认权限为 :666与umask的值相减
      • 例如 : 文件默认最大权限为 666 , umask值为 022(-rw-rw-rw-  减去 -----w--w- 等于 -rw-r--r--)
      • 例如 : 文件默认最大权限为666 , umask值为 033 (-rw-rw-rw- 减去 -----wx-wx 等于 -rw-r--r--)
  • 目录默认权限
    • 目录默认最大权限为 : 777
    • 默认权限需要换算成字母再相减
    • 建立目录之后的默认权限为 : 777 减去umask值
      • 例如 : 目录默认最大权限为 777 , umask值为 022(-rwxrwxrwx 减去 -----w--w- 等于 -rwxr-xr-x)
  • 修改umask值
    • 临时修改 : umask 0002
    • 永久修改 : vi /etc/profile