一、文件权限
-
文件的权限针对三类对象进行定义
owner 属主,缩写u
group 属组,缩写g
other 其他,缩写o
-
每个文件针对每类访问者定义了三种主要权限
r:Read 读
w:Write 写
x:eXecute 执行
- 对于文件和目录来说,r,w,x有着不同的作用和含义:
针对文件:
r:读取文件内容
w:修改文件内容
x:执行权限对除二进制程序以外的文件没什么意义
针对目录:目录本质可看做是存放文件列表、节点号等内容的文件
r:查看目录下的文件列表
w:删除和创建目录下的文件
x:可以cd进入目录,能查看目录中文件的详细属性,能访问目录下文件内容(基础权限)
二、修改文件访问权限的方法
chmod 修改权限 change mode
方法1:mode法
格式:chmod who opt per file
who:u g o a(all)
opt:+ – =
per:r w x X
方法2:数字法
格式:chmod XXX file
rwx rw- r–
111 110 100
7 6 4
r:4
w:2
x:1
三、ACL访问控制列表
作用:实现更加灵活的权限管理,打破了三类用户的权限管理
添加ACL权限:
setfacl -m u:wang:0 file 使wang账户对指定file文件无权限
setfacl -m u:mage:rw file 使mage账户对指定file文件有读写权限
setfacl -m g:g1:rw file 使g1组对指定file文件有读写权限
getfacl file 查看指定file文件的ACL权限
删除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所拥有的最大权限位读r
setfacl -x mask::r file 取消指定文件file的最大权限限制mask
setfacl -b f1 取消f1文件所有的ACL权限
备份和恢复ACL权限:
getfacl -R /tmp/dir1>acl.txt 将dir1目录下ACL权限备份
setfacl -R –set-file=acl.txt /tem/dir 恢复dir1目录下ACL权限
四、三种特殊权限suid、sgid、sticky(sticky权限工作环境中相对常用)
suid
作用:给一个用户继承二进制程序所有者拥有的权限
例:ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /usr/bin/passwd
给file文件增加suid权限
chmod u+s file
chmod 4755 file suid数字法表示为4
sgid
作用1:给一个用户继承二进制程序所有组拥有的权限
例:ll `which cat`
-rwxr-sr-x. 1 root root 48568 Mar 23 2017 /bin/cat
给file文件增加sgid权限
chmod g+s file
chmod 2755 file sgid数字法表示为2
作用2:作用在目录上时,使一个目录下的新建的文件继承目录的所属组
sticky
作用:作用于目录上,此目录的文件只能被所有者删除
如:ll -d /tmp
drwxrwxrwt. 17 root root 4096 Apr 4 10:02 /tmp
给dir目录添加sticky权限
chmod o+t dir
chmod 1777 dir sticky数字法表示为1
五、文件权限操作的常用命令
-
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权限
习题
1.简述命令chown与chmod的区别。
chown的作用:修改文件/文件夹的用户和用户组的属性
1. 将文件jiyi.html的所有者修改为tingqiu
chown tingqiu jiyi.html
2. 将目录/tmp/result所有者和组修改为用户tingqiu和组we
chown -R tingqiu:we /tmp/result
chmod的作用:修改文件/文件夹的读写执行属性
1. 将文件tingqiu.html修改为可读可写可执行
chmod 777 tingqiu.html
2. 将某目录下所有文件属性修改可读可写可执行
chmod 777 *.*
3. 将/tmp/result文件夹下所有文件和文件夹及其子文件夹属性修改为可读可写可执行
chmod -R 777 /tmp/result
2.简述mask的作用。
mask 权限,指的是用户或群组能拥有的最大 ACL 权限,也就是说,给用户或群组设定的 ACL 权限不能超过 mask 规定的权限范围,超出部分做无效处理。
标签:文件,chmod,ACL,file,权限,03Linux,目录 From: https://www.cnblogs.com/75qiwu/p/17862092.html