计算机资源
计算机硬件资源和软件资源
文件权限分类
普通权限,高级权限,默认权限
普通权限系统
读权限:r(read)= 4
写权限:w(write) = 2
执行权限:x(exectue)= 1
无权限:- () = 0
用户身份(UGO)
U:文件的拥有者
G:文件组的用户
O:既不是创建者也不是组内用户,表示other
a:所有用户
文件系统一般使用三组权限发挥文件控制,如:drwxr-xr-x ( d U: [rwx] G:[r-x] O: [r-x] )
修改文件权限
chmod [选项] 模式 文件名-R 递归
字母形式
chmod o+w file1 #file1文件其他用户增加w权限chmod u=rwx file1 #拥有者设置所有权限chmod rwxrwxrwx file1 #所有人所有权限chmod u=rwx,g-x,o=- file1 #设置多用户身份权限chmod a=rwx file2
数字形式
chmod 777 file1 #file设置rwxrwxrwx权限
修改文件属主和属组
chown命令
chown 用户名 文件名 #只修改文件属于谁chown 用户名.组名 文件名chown 用户名:组名 文件名chown 用户名. 文件名 #默认主组chown .组名 文件名 #只修改组chown :组名 文件名 #只修改组-R 表示递归
chgrp命令
chgrp 组名 文件名 #只能修改属组
高级权限系统
冒险位(SETUID)
文件操作者临时拥有文件拥有者的权限,一般针对的是命令或者脚本,冒险位使用s/S或者数字4
chmod u+s 文件名chmod 4xxx 文件名chmod u+S 文件名 #S表示原来没有执行权限
强制位(SETGID)
一般针对目录,如果一个目录拥有强制位,那么任何用户在该目录里面创建的任何文件的属组都会继承该目录的属组
使用字母s/S表示,数字表示是2
chmod g+s 文件名chmod 2xxx 文件名
粘滞位(STICKY)
一般针对公共目录,目录下的文件只有root和文件的拥有者可以删除,其他人只能自己管理自己的文件和文件夹,使用t/T表示 数字表示1
chmod o+t 文件名chmod 1xxx 文件名
文件默认权限
临时控制
文件目录最大权限:0777
文件最大权限:0666
umask = 文件最大权限 - 文件默认权限
推出 -> 文件默认权限 = 文件最大权限 - umask
补充:实际权限不能有负数,文件创建默认不可能有执行权限
umask #查看当前用户的默认权限umask 0007 #设置默认权限为0007
永久控制
##全局配置/etc/profile ##系统和用户环境变量设置/etc/bashrc ## 每个运行的bashrc## 局部变量~/.bashrc ## 当前用户bash~/.base_profile ## 当前用户环境变量~/.bash_history ## 当前用户历史命令文件~/.bash_logout ## 当用户退出会自行文件中的代码再退出## 全局和局部生效bashrc中新增 umask 0007
ACL访问控制策略
ACL对权限控制的一种补充,更加细的控制文件的权限,可以只针对某个用户也可以针对组或者多个用户
setfacl-m #修改ACL策略-R #递归授权-X #去掉某个用户或者某个组的权限-b #删除所有的ACL策略-d #默认ACL策略,针对目录,该目录下的文件都会继承ACL策略mask #定义其他用户和所有者以外的最大权限setfacl -m u:用户名:rwx /home/xxx ##单个用户独加权限setfacl -m g:组 rwx 文件名 ## 给组加权限getsfacl 文件名 ##获取ACL策略
