首页 > 代码库 > Linux下ACL权限控制以及用sudo设置用户对命令的执行权限

Linux下ACL权限控制以及用sudo设置用户对命令的执行权限

ACL权限分配

1.setfacl命令设置文件权限

setfacl -m u:user1:rw root.txt
setfacl -m u:user2:rwx root.txt

2.getfacl命令查看文件权限

getfacl root.txt
[root@localhost ~]# getfacl text.txt 
# file: text.txt
# owner: root
# group: root
user::rw-
user:wangteng:rw-
group::r--
mask::rw-
other::r--

3.删除文件权限

setfacl -x user:user3 root.txt

4.清空文件权限

setfacl -b root.txt

5.文件夹权限

如果要给某个文件夹分配权限,要注意的是:必须要有rx权限,如果只有r权限,则该用户进入不了该目录,如果只有x权限,则用户可进入但是不能查看目录下文件,如果没有w权限,则用户删除创建不了文件

setfacl -m u:user1:rwx  /dir

6.对目录下的所有子目录及其文件递归设置权限

setfacl -m u:user1:rwx -R /dir/

7.对当下目录的所有子目录及其后期新创建的目录也保持同一权限

setfacl -m d:user1:rwx -R /dir/

          设置用户对命令的执行权限  visudo命令

拿系统指定某个用户专门创建用户举例

  1. 设置

visudo
user1   localhost=/usr/sbin/useradd./usr/sbin/userdel  //把此行代码写入文件最下面

2.使用有密码sudo授权命令

sudo    localhost=/usr/sbin/useradd newuser
sudo    localhost=/usr/sbin/useradd -r newuser

3.使用无密码的sudo命令

sudo    localhost=NOPASSWD: /usr/sbin/useradd -r newuser
sudo    ALL=NOPASSWD: /usr/sbin/userdel -r newuser

Linux下ACL权限控制以及用sudo设置用户对命令的执行权限