一.用户权限下放(sudo)
普通用户对系统文件没有写入的权限,所以在必要时候需要将系统管理员的权限下放给普通用户,使其对系统有特定的管理权限。
(1).权限下放动作的配置文件 :/etc/sudoers,用visudo命令编辑
文件内容编辑模式
授权目标用户 主机名称=(授权用户得到的新用户身份) 授权用户执行命令
test ALL=(ALL) ALL
例:[[email protected] ~]# visudo
test ALL=(ALL) ALL
[[email protected] ~]# su - test
Last login: Mon Apr 11 19:00:36 CST 2016 on pts/0
[[email protected] ~]$ sudo mkdir 1
[sudo] password for test: ##输入普通用户的密码
[[email protected] ~]$ ls
1
二.权限列表
对于文件的权限进行附加补充说名的一个权限设定方式
权限列表查看:# ls -l test_acl
-rw-rw-r--+ 1 root root 0 4月 12 00:03 test_acl
“.”表示没有权限列表,“+”表示有权限列表
1. ACL用户权限设置
ACL针对单一用户,单一文件或目录进行r,w,x的权限设置。 .
(1).查看当前系统是否支持acl
# df -h
/dev/mapper/VolGroup-lv_root 6.7G 877M 5.5G 14% /
#dumpe2fs -h /dev/mapper/VolGroup-lv_root
Default mount options: user_xattr acl ##结果显示支持
当当前系统不支持时,设置当前系统支持acl。
# mount -o remount,acl / ##暂时性修改
或者
# vim /etc/fstab ##永久性修改,开机会自动加载
/dev/mapper/rhel-root / xfs defaults,acl 1 1 .
(2).权限设置
setfacl ##设置某个文件/目录的acl权限列表
格式
setfacl -m <u|g>:<username|groupname>:权限 filename
setfacl -m <m>:权限 filename ##mask权限设置
setfacl -x <u|g>:<username|groupname> filename
setfacl -x <m>: filename ##mask权限取消
setfacl -b filename ##删除文件所有用户权限
-m:设置acl参数,不可与-x合用
# setfacl -m u:test:rw test_acl
-x:删除acl参数,不可与-m合用
# setfacl -x u:test test_acl
-d:给目录设置acl权限列表
# setfacl -m d:u:test:rx yang/
-b:删除所有acl参数
# setfacl -b yang/
-k:删除默认的acl参数
-R:递归设置acl权限
取消mask有效权限:setfacl -x m: test_facl
# setfacl -x m: test_acl
设置mask有效权限:setfacl -m m:rwx test_acl
# setfacl -m m:rwx test_acl
注:用户或用户组设置的权限必须要存在于mask有效权限设置范围之内才
可以生效。
getfacl ##查看某个文件/目录的acl权限
getfacl filename