创建一个test用户
[root@master ~]# salt '192.168.11.132' user.add test
192.168.11.132:
True
创建用户时指定shell
[root@master ~]# salt '192.168.11.132' user.add test1 shell=/sbin/nologin
192.168.11.132:
True
创建用户时指定不创建家目录
[root@master ~]# salt '192.168.11.132' user.add test3 createhome=False
192.168.11.132:
True
删除test3用户
[root@master ~]# salt '192.168.11.132' user.delete test3 remove=True
192.168.11.132:
True
查看所有用户
[root@master ~]# salt '192.168.11.132' user.list_users
192.168.11.132:
- test
- test1
- test2
- test4
......
更改用户的shell
[root@master ~]# salt '192.168.11.132' user.chshell test /bin/tj
192.168.11.132:
True
权限管理
*为指定的文件添加或修改FACL
[root@master ~]# salt '192.168.11.132' acl.modfacl user root rwx /opt/tj
192.168.11.132:
True
[root@master ~]# salt '192.168.11.132' acl.modfacl u test 7 /opt/tj
192.168.11.132:
True
[root@minion opt]# ll
总用量 0
-rw-rwxr--+ 1 root root 2 7月 6 12:33 tj
返回指定文件上facl的(极其详细的)映射
[root@master ~]# salt '192.168.11.132' acl.getfacl /opt/tj
192.168.11.132:
----------
/opt/tj:
----------
comment:
----------
file:
/opt/tj
group:
root
owner:
root
group:
|_
----------
root:
----------
octal:
4
permissions:
----------
execute:
False
read:
True
write:
False
mask:
|_
----------
:
----------
octal:
7
permissions:
----------
execute:
True
read:
True
write:
True
other:
|_
----------
:
----------
octal:
4
permissions:
----------
execute:
False
read:
True
write:
False
user:
|_
----------
root:
----------
octal:
6
permissions:
----------
execute:
False
read:
True
write:
True
|_
----------
root:
----------
octal:
7
permissions:
----------
execute:
True
read:
True
write:
True
|_
----------
test:
----------
octal:
7
permissions:
----------
execute:
True
read:
True
write:
True
从指定的文件中删除特定的FACL
[root@master ~]# salt '192.168.11.132' acl.delfacl user test /opt/tj
192.168.11.132:
True
从指定的文件中删除所有facl
[root@master ~]# salt '192.168.11.132' acl.wipefacls /opt/tj
192.168.11.132:
True
从getfacl——version返回facl版本
[root@master ~]# salt '192.168.11.132' acl.version
192.168.11.132:
2.2.53
计划任务
将文件的内容写入用户的crontab
[root@master ~]# salt '192.168.11.132' cron.write_cron_file root /opt/tj
192.168.11.132:
True
返回用户crontab的内容
[root@master ~]# salt '192.168.11.132' cron.raw_cron root
192.168.11.132:
*/1 * * * * usr/bin/date &>/root/opt/xx
删除指定用户的cron作业
[root@master ~]# salt '192.168.11.132' cron.rm_job root /opt/tj
192.168.11.132:
absent
返回指定用户crontab的内容
[root@master ~]# salt '192.168.11.132' cron.list_tab root
192.168.11.132:
----------
crons:
env:
pre:
- */1 * * * * usr/bin/date &>/root/opt/xx
special:
将文件的内容写入用户的crontab并在出错时返回错误消息
[root@master ~]# salt '192.168.11.132' cron.write_cron_file_verbose root /opt/tj
192.168.11.132:
----------
pid:
70050
retcode:
0
stderr:
stdout:
删除指定用户的cron环境变量
[root@master ~]# salt '192.168.11.132' cron.rm_env root MAILTO
192.168.11.132:
absent
为指定用户设置cron作业
[root@master ~]# salt '192.168.11.132' cron.set_job root '*' '*' '*' '*' 1 /usr/local/weekly
192.168.11.132:
new
在crontab中设置一个环境变量
[root@master ~]# salt '192.168.11.132' cron.set_env root MAILTO root@example.com
192.168.11.132:
new
删除指定用户的特殊cron作业
[root@master ~]# salt '192.168.11.132' cron.rm_special root /opt/tj
192.168.11.132:
absent
[root@master ~]# vim /etc/salt/master
下面三行取消注释,在salt后面加base
file_roots:
base:
- /srv/salt/base
[root@master base]# vim cron.sls
[root@master base]# cat cron.sls
cron_test:
cron.present:
- name: /bin/touch /tmp/fansik.txt
- user: root
- minute: '*'
- hour: 20
- daymonth: 1-27
- month: '3,5'
- dayweek: '*'
[root@master base]# vim top.sls
[root@master base]# cat top.sls
base:
minion:
- cron
[root@master base]# salt '*' state.sls cron
192.168.11.132:
----------
ID: cron_test
Function: cron.present
Name: /bin/touch /tmp/fansik.txt
Result: True
Comment: Cron /bin/touch /tmp/fansik.txt added to root's crontab
Started: 13:11:49.710879
Duration: 124.324 ms
Changes:
----------
root:
/bin/touch /tmp/fansik.txt
Summary for 192.168.11.132
------------
Succeeded: 1 (changed=1)
Failed: 0
------------
Total states run: 1
Total run time: 124.324 ms
本文介绍了如何使用SaltStack进行用户管理,包括创建、删除用户,指定用户shell,以及查看用户信息。同时,文章详细讲解了权限管理,如设置文件的FACL,以及计划任务的管理,如添加、删除用户cron作业,设置环境变量等。
1万+

被折叠的 条评论
为什么被折叠?



