首先需要我们了解的是,权限(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
- chown 用户名 文件名
- 修改文件所属组 : chgrp
- chgrp 组名 文件名
- 例如 : chgrp gro1 test.txt
- chgrp 组名 文件名
-
修改文件、目录权限 : 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权限
- chmod [选项] 模式 文件名
查看默认权限的命令
- 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