setfacl解析

为什么要使用ACL

在linux下,对一个文件(或者资源)可以进行操作的对象被分为三类: file owner(文件的拥有者), group(组,注意不一定是文件拥有者所在的组), other (其他)
而对于每一类别又分别定义了read, write and execute/search permission

通过ls -l命令就我们就可以列出一个文件的permission

-rw-r----- 1 root  root    0 Jan  4  2020 ip_address

在 这里说明了对于这个文件leonard用户拥有read & write permission. 所有属于root group的用户(group)拥有read  permission. 其他任何用户(other)对于文件没有任何的而我现在想让xiaosong同学对这个文件拥有读和写的权限,xiaoxue同学对这个文件拥有读写执行的权限等等,现在应该咋做呢,最简单的办法就是应用acl来控制

下面来看一下acl的用法

对用户设置权限

setfacl -m u:xiaosong:rw-  test.txt 普通的文件

setfacl -m d:u:john:rw-  /home  对目录设置

对组设置权限

setfacl -m g:group:r-- test.txt

setfacl -m d:g:group:r-- /home

查看权限

getfacl  filename/directory

note:

有时当你敲打命令之后提示报错,这时你应该想是什么问题,是不是是你新挂载的硬盘,新挂载的硬盘默认没有acl权限,这时需要你手动添加

在/etc/fstab文件中添加上acl权限

例如:UUID="9cf8a3f5-6b6a-4d02-ab39-e04b37070df0"     /backup ext3    defaults,acl    0 0

对啦,我上面是使用uuid挂载的,这样挂载起来比较安全,查看uuid可以使用blkid 命令。

例如:

[root@it /]# blkid
/dev/sda3: LABEL="/" UUID="dcaa2380-6fbe-43c4-a135-e7f09f0a3d14" TYPE="ext3"
/dev/sda2: LABEL="SWAP-sda2" TYPE="swap"
/dev/sda1: LABEL="/boot" UUID="4504b586-fee2-46ad-9832-c6d57c76e5a7" TYPE="ext3"
/dev/md0: UUID="9cf8a3f5-6b6a-4d02-ab39-e04b37070df0" TYPE="ext3"
/dev/sdb1: UUID="9cf8a3f5-6b6a-4d02-ab39-e04b37070df0" TYPE="ext3"

 

 

你可能感兴趣的:(linux,职场,acl,休闲)