Linux学习 第5课

基本权限ACL

ACL基本用法

getfacl命令

getfacl命令查看ACL权限,与ll命令查看的内容相差无几

getfacl /home/test.txt

如下演示:查看home目录下的test.txt文件

setfacl命令

setfacl命令用来设置ACL权限,对每一个文件目录进行更加精细的权限的设置
参数:
1.-m 可以修改当前文件的ACL权限
2.-x 可以删除用户对文件的所有权限
3.-b 可以删除所有扩展ACL权限,回到UGO的基本权限

setfacl -m u:longcan20218521:rw /home/test.txt
setfacl -x u:longcan20218521 /home/test.txt
setfacl -b /home/test.txt

如下演示:

  1. 给予longcan20218521用户对于home目录下的test.txt文件的rw权限,再使用ll命令查看
  2. 使用getfacl命令查看用户longcan20218521的权限
  3. 为组hr增加“rw”权限,并查看该文件的详细权限
  4. 添加“-x”参数可以删除用户对文件的所有权限。可以使用longcan20218521用户查看文件内容

  5. 使用-b参数删除/home/test.txt文件的所有扩展ACL权限

ACL高级特性

最大有效权限mask

mask用来指定最大有效权限。系统给用户赋予的ACL权限需要和mask的权限逻辑“相与”,“相与”之后的权限才是用户的真正权限。

如下演示:

  1. 将mask权限设置为“r”。用户权限与其“相与”之后,有效的权限为r--,用户真正的权限就是“r--”。使用longcan20218521用户后,发现没有执行权限。
  • 解释:r为4对应二进制1000。r--为4对应二进制为1000。“相与”后为1000,即4.因此真正权限为r--。
  1. 将mask的权限设置为“rw”,longcan20218521的权限设置为“rx”,相与后为“r--”。
  • 解释:rw对应为6,二进制为0110.rx对应为5,二进制为0101.相与后为0100,即4,即“r--”。
  1. 为方便文件管理,将other的权限设置为空

mask的作用与特性

mask能够临时降低用户或组的权限。

default:继承

演示如下:

  1. 创建dir01目录,给longcan20218521用户添加“rwx”权限,然后在dir01目录下创建dir02目录,切换到longcan20218521发现没有权限创建新文件
  2. 使用default命令继承上一个目录的权限,先用getfacl命令查看dir01的ACL权限。
posted @ 2023-11-14 20:07  Lc123456789  阅读(23)  评论(0)    收藏  举报