文章目录Linux文件权限详细信息一、文件权限二、修改文件访问权限方法三、UMASK值四、三种特殊权限suid、sgid、sticky(sticky权限工作环境中比较常用)五、ACL访问控制列表六
在Linux系统中,不仅可以根据UID、GID管理用户和组,还可以将Linux系统中的文件按用户和组进行分类,按组进行权限管理,谁可以访问和操作文件和目录
一、文件权限文件的权限是针对三种对象定义的
owner属主,缩写u
组属组,缩写g
other其他缩写o
每个文件为每种访问者类型定义了三个主要权限
r :导线
w :写入
x :执行
)对目录授予执行权限,不对文件授予执行权限()因为文件具有执行权限,所以存在安全隐患) ) ) )。
注:根帐户不受文件权限的读写限制,执行权限受到限制
对于文件和目录来说,r、w和x具有不同的角色和意义。
对于文件:
r )读取文件内容w )修改文件内容x )执行权限对二进制文件以外的文件没有太大意义(相对于目录),目录的本质可以看作是存储文件列表、节点号等内容的文件
r )查看目录下的文件列表w )通过删除目录下的文件创建的x ) cd可以访问目录,可以查看目录中文件的详细属性,可以访问目录下文件的内容(基本权限)
用户获取文件权限的顺序:首先查看是否为所有者,如果是,则确认是否为不查看后续权限的所属组,如果是,则不查看后续权限。
二、如何修改文件权限修改chmod权限变更模式
方法1:mode法
格式: chmod who opt per file
世卫组织: ugoa (all ) opt :=per:rwx方法2 :数字法
格式: chmod XXX文件
rwx rw-r11110100764 r:4w:2x:1示例: chmod 764 file将rwx rw-r权限添加到文件
chmod -R X dir将x执行权限添加到dir目录,而不将执行权限添加到dir目录下的文件
(如果在dir目录下有已经具有执行权限的文件,请添加该文件的执行权限。)
三、UMASK值的作用:影响取消相应权限创建文件和目录的默认权限
对目录: umaskdefault=777(dir )对文件: 666-umask )观察结果,奇数、奇数位1、偶数不变四三种特殊权限suid、sgid、Sticky ) Sticky权限工作环境下比较好
角色:由用户继承二进制文件所有者拥有的权限
如果suid权限位位于所有者的执行权限位,并且一个文件具有suid权限,则所有者的执行位显示为s,文件显示为红色背景
示例: ll/usr/bqdxhd/passwd-rwsr-xr-x.1 root root 27832 jun 102014/usr/bqdxhd/passwd在文件中具有suid权限chmodusfilechmmmend
sgid
角色1 :由一个用户继承二进制程序中所有组的权限
sgid权限位位于所有组的执行权限位,如果一个文件具有suid权限,则所有组的执行位显示为s,文件显示为黄色背景
示例: ll ` which cat `-rwxr-Sr-x.1根根根48568 mar 232017/bqdxhd/cat在文件文件中添加sgid权限chmod g s文件chmod 2755文件sgid数字法
斯蒂克y
角色作用于目录,只有所有者才能删除此目录中的文件
sticky权限位位于其他执行权限位,如果一个文件具有sticky权限,则其他执行位显示为t,目录显示为绿色背景
例如,ll-d/tmpdrwxrwxrwt.17 root root 4096 apr 410336002/tmp在dir目录中添加了sticky权限chmod o t dirchmod 1777 dir sticky数字法1,5,accky 更灵活的
添加ACL权限
setfacl-m u : wang :0文件不授予Wang帐户对指定文件文件的权限。 setfacl -m u:mage:rw file让您指定mage帐户
file文件有读写权限setfacl -m g:g1:rw file 使g1组对指定file文件有读写权限getfacl file 查看指定file文件的ACL权限ACL权限执行顺序类似于用户获取文件权限的顺序,getfacl顺序从上到下执行,一旦生效,下面的将不再生效(如果属于多个组,权限累加)
删除ACL权限
setfacl -x u:wang file 删除wang账户对指定file文件的ACL权限setfacl -x g:g1 file 删除g1组对指定file文件的ACL权限ACL权限下的mask
设置用户对指定文件所能拥有的最大权限(限高作用)setfacl -m mask::r file 使指定文件file所拥有的最大权限位读rsetfacl -x mask::r file 取消指定文件file的最大权限限制masksetfacl -b f1 取消f1文件所有的ACL权限ACL生效顺序:所有者、自定义用户、自定义组、其他人
备份和恢复ACL权限
getfacl -R /tmp/dir1>acl.txt 将dir1目录下ACL权限备份setfacl -R –set-file=acl.txt /tem/dir 恢复dir1目录下ACL权限 六、文件权限操作的常用命令chown 设置文件所有者(普通用户无法修改文件所有者)
chgrp 设置文件所属组(普通用户要想该所属组,前提是文件所有者为自己,自己在所属组中)
chmod 设置指定文件权限
-R 递归 –reference=f1 f2 f3 参考f1文件权限设置f2,f3文件chattr 给指定文件添加保护,避免root账户误操作
+i 锁定文件,不能删除,不能改名,不能更改内容 -i 解锁+i -a 锁定文件,不能删除,不能改名,但可追加内容(追加重定向) -a 解锁+a +A 指定文件读时间atime不再更改lsattr 查看指定文件是否有锁定状态
setfacl 设置文件ACL权限
-m mask::r file 使指定文件file所拥有的最大权限位读r -x mask::r file 取消指定文件file的最大权限限制mask -b f1 取消f1文件所有的ACL权限 -R –set-file=acl.txt /tem/dir 恢复dir1目录下ACL权限getfacl 查看文件ACL权限