权限管理:指的是操作文件权限
超管用户不受普通权限的限制 # 1.文件权限分类: r (read) : 4 可读 w (write) : 2 可写 x (execute) : 1 可执行 - (N/A) : 0 没有权限 # 2.权限位的概念: rw- --- --- 属主 属组 其他人 # 三个字符,为一个权限位 user group other # 3.设置权限的命令 # 3.1 设置用户及用户组(修改文件和文件夹的用户和用户组属性 ) chown [选项] [用户].[用户组(非必须)] [路径] 选项: -R:递归修改文件的属主、属组 # eg:chown root:root /tmp/tmp1 只修改了/tmp下的tmp1文件 的用户名和用户组改成root和root # eg:chown -R root:root /tmp/ 把/tmp目录以及/tmp下的所有文件 的用户名和用户组都改成root和root # 3.2 设置权限 以每个权限位为单位,把 数字权限和 使用chmod来设置 格式: chmod [选项] [数字权限和] [路径] 选项: -R:递归设置 # eg:将test目录对应 属主、属组、其他人 的权限,全是可读可写可执行 (4+2+0) chmod 777 -R test/
# linux一般是最小化安装,为了提高性能;linux一般是设置最小权限,为了提高安全性 注:一定要使用普通用户,同时使用全路径来测试 1.读权限 当目录有可执行权限,文件有可读权限时,文件可读。 2.写权限(用echo测试,vi和vim需要读文件) 当目录有可执行权限,文件有可写权限时,文件可写。 3.可执行权限 文件可执行权限的最小权限是:目录有可执行权限,文件有可读可执行权限。 # 总结:目录必须有可执行权限,文件才能拥有其他权限。
# 归属 可读 r 可写 w (文件夹必须先有x权限,才可以在文件中新建文件 touch mkdir等操作) 可执行 x 属主 u 属组 g 其他人 o 所有用户 a # 案例: 通过权限归属来修改权限,不需要再计算数字权限和 # 1.给1.sh的属主可执行权限 chmod 100 1.sh # 或 chmod u+x 1.sh # 2.给1.sh的属组可读权限 chmod 040 1.sh # 或 chmod g+r 1.sh # 3.在原权限不变的情况下,给一个其他人的可读权限 chmod 144 1.sh # 或 chmod o+r 1.sh # 4.去掉1.sh的其他人的可读权限 chmod 140 1.sh # 或 chmod o-r 1.sh # 5.要求把1.sh加上可执行权限 chmod +x 1.sh # 如果不跟用户,则默认所有用户 # 6.修改1.sh权限为属组只读,属主只写,其他人只读 chmod u=w,g=r,o=r 1.sh
# 创建普通文件时有一个默认的权限,为:644,请问这个默认的权限怎么修改? umask 002 创建文件时,默认的权限时666,跟umask值计算,用666 减 umask值 如果得到的值为奇数,那么加一,偶数不变 创建文件夹,默认的权限时777,跟umask值计算,用777 减 umask值 假设:umask值为 022 ,那么创建的文件及文件夹的默认权限是多少 644 123 644 654 456 220 321