samba+acl应用
yum y install samba*
存放各个部门目录以及部门之间共享目录,如IT部即有IT和ITLibrary,
(1)IT:IT群组可读写执行,其他用户没有任何权限(drwxrwx---)
(2)ITLibrary:IT群组可读写执行,其他用户读取和执行权限(drwxrwxr-x),如果没有执行权限,则无法进入目录查看
存放个人盘,家目录拥有者拥有完全权限,其他用户和群组没有任何权限(drwx------)
[global]
workgroup = MYGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
security = user
load printers = yes
cups options = raw
include=/etc/samba/%U.smb.conf
include=/etc/samba/%G.smb.conf
smb passwd file=/etc/samba/smbpasswd
[homes]
comment = Home Directories
browseable = no
writable = yes
[dept]
comment = dept
path = /dept
browseable = yes
writable = yes
public = no
此为用户家目录,目录权限在创建用户时刚好符合要求,只有root和用户自己可以管理家目录,直接将家目录共享出来:
[home]
comment = home
path = /home
browseable = no
writeable = yes
write list = @personal
public = no
使用mount,可以直接查看挂载参数的功能。如果没有acl,则说明挂载的时候没有开启acl权限。
那么我们可以使用dump2fs -h /dev/sda2命令来查看该块设备的状态信息。其中有一行Default mount options: *****,如果****中有acl,则说明支持acl。
接下来,我们可以使用mount -o remount,acl / 的命令来重新挂载根分区,这样就打开了acl权限。
如果想要每次开机都生效,可以编辑/etc/fstab,并修改相关参数。
/dev/sda1 / ext4 defaults,acl 0 0
setfacl [-bkRd] [{-m|-x} acl参数] 目标文件名
参数:
-m:设置后续的acl参数给文件使用,不可以与-x合用。
-x:删除后续的acl参数,不可与-m合用。
-b:删除所有的acl设置参数。
-k:删除默认的acl参数。
-R:递归设置acl。
-d:设置默认的acl参数,只对目录有效。在该目录下新建的数据会引用此默认值。
dumpe2fs /dev/sda1 | grep acl
Default mount options: user_xattr acl
临时将分区挂支持ACL功能:
mount -o remount,acl /dev/sda1
如果想要每次开机都生效,可以编辑/etc/fstab,并修改相关参数。
/dev/sda1 / ext4 defaults,acl 0 0
(1)将/dept拥有者和拥有组更改为root
chown root.root /dept
(2)去除/dept拥有组和其他人写权限,以免拥有组成员或者其他人对进行目录重命名或者删除操作
chmod 755 /de
原文:http://1055745601.blog.51cto.com/5003160/1718345