ansible(八)常用模块( cron,service, user,group)之系统模块

cron模块详解

cron模块可以帮助我们管理远程主机中的计划任务,功能相当于crontab命令

5 1 * * * echo test每天1点5分输出test
1 1 */3 * * echotest每三天的1点1分输出test
@reboot echo test每次重启输出test
@hourly echo test每小时输出test

minute参数:此参数用于设量i计划任务中分钟设定位的值,比如,.上述示例1中分钟设定位的值为5,即minute=5,当不使用此参数时,分钟设定位的值默认为1*"1

hour参数:此参数用于设置i计划任务中小时设定位的值,比如,. 上述示例1中小时设定位的值为1,即hour=1, 当不使用此参数时,小时设定位的值默认为"*"

day参数:此参数用于设置计划任务中日设定位的值,当不使用此参数时,日设定位的值状认为"*"

month参数:此参数用于设置计划任务中月设定位的值,当不使用此参数时,月设定位的值默认为"*"

weekday参数:此参数用于设计划任务中周几设定位的值,当不使用此参数时,周几设定位的值默认为"*“

special time参数:在上述示例3与示例4中,计划任务的时间设定格式为@reboot或者@hourly,@reboot表示重启时执行,@hourly表示每小时执行一次,相当于设置成"0 * * * *",这种@开头的时间设定格式则需要使用special_ time参数进行设置,special time参数的可用值有reboot(重启后)、yearly(每年)、 annually(每年,与yearly相同)、monthly(每月)、weekly(每周)、daily(每天)、hourly(每时)

user参数:此参数用于设f当前计划任务属于哪个用户,当不使用此参数时, 默认为管理员用户
job参数:此参数用于指定计划的任务中需要实际执行的命令或者脚本,比如上例中的"echo test"命令。0表示在整时,整分,整秒,*表示忽略,任意时刻。
name参数:此参数用于设置计划任务的名称,计划任务的名称会在注释中显示,当不指定计划任务的名称时,ansible会状认为计划任务加入注释,注释的内容为Ansible:None , Ansible:test
state参数:当计划任务有名称时,我们可以根据名称修改或删除对应的任务,当删除计划任务时,需要将state的值设置为absent
disabled参数:当计划任务有名称时,我们可以根据名称使对应的任务"失效" (注释掉对应的任务),注意,使用此参数时,除了需要指定任务的名称,还需要同时指定任务的job以及任务的时间设定,而且任务的时间设定必须和对应任务完全相同,否则在注释任务的同时,任务的时间设定会被修改
backup参数:如果此参数的值设置t 为yes,那么当修改或者删除对应的计划任务时,会先对计划任务进行备份,然后再对计划任务进行修改或者删除,cron模块会在远程主机的/tmp目录下创建备份文件,以crontab开头并且随机加入一些字符,具体的备份文件名称会在返回信息的backup_ file字段中看到,推荐将此此参数设置为yes

(1)创建计划任务
在这里插入图片描述
查看
在这里插入图片描述
创建
在这里插入图片描述
查看
在这里插入图片描述
创建
在这里插入图片描述
查看
在这里插入图片描述
在这里插入图片描述
(2)当创建任务名称存在时会更新内容
在这里插入图片描述
查看
在这里插入图片描述
(3)在(2)的基础上加上backup
在这里插入图片描述
查看
在这里插入图片描述

(4)给指定用户添加任务
在这里插入图片描述
查看=
在这里插入图片描述

(5)暂时注释一个任务
在这里插入图片描述
查看
在这里插入图片描述

service模块详解

service模块可以帮助我们管理远程主机上的服务,比如启动或停止远程主机中的apache服务

name参数:此参数用于指定需要操作的服务名称,比如httpd
state参数:此参数用于指定服务的状态,比如,我们想要启动远程主机中的httpd,则可以将state的值设置为started,如果想要停止远程主机中的服务,则可以将state的值设量为stopped,此参数的可用值有started、stopped、restarted、 reloaded。
enabled参数:此参数用于指定是否将服务设为开机启动项,设为yes表示将对应服务设I 为开机启动,设为no表示不会开机启动
(1)在远程主机安装httpd并查看状态
在这里插入图片描述
在这里插入图片描述
(2)远程开启httpd服务
在这里插入图片描述
查看
在这里插入图片描述
(3)远程关闭httpd
在这里插入图片描述
查看
在这里插入图片描述
(4)将httpd设成开机启动项
在这里插入图片描述

user模块详解

user模块可以帮助我们管理远程主机上的用户,比如创建用户、修改用户、删除用户、为用户创建密钥对等操作

name参数:必须参数,用于指定要操作的用户名称,可以使用别名user。
group参数:此参数用于指定用户所在的基本组
gourps参数:此参数用于指定用户所在的附加组,注意,如果说用户已经存在并,且已经拥有多个附加组,那么如果想要继续添加新的附加组,需要结合append参数使用,否则在默认情况下,当再次使用groups参数设置附加组时,用户原来的附加组会被覆盖。
append参数:如果用户原本就存在多个附加组,那么当使用groups参数设置附加组时,当前设置会覆盖原来的附加组设置,如果不想覆盖原来的附加组设置, 需要结合append参数,将append设置为yes, 表示追加附加组到现有的附加组设置,append默认值为no

shell参数:此参数用于指定用户的默认shell
uid参数:此参数用于指定用户的uid号
expires参数:此参数用于指定用户的过期时间,相当于设置/etc/shadow文件中的的第8列, 比如,你想要设置用户的过期日期为2020年12月31日,那么你首先要获取到2020年12月31日的unix时间戳,使用命令"date -d 2020-12-31 +%s"获取到的时间戳为1546185600所以,当设置fexpires= 1546185600时,表示用户的过期时间为2020年12月31日0点0分,设置成功后,查看远程主机的/etc/shadow文件,对应用户的第八列的值将变成17895 (表示1970年1月1日到2020年12月31日的天数,unix时间戳的值会自动转换为天数,我们不用手动的进行换算),目前此参数只支持在Linux和EreeBSD系统中使用
comment参数:此参数用于指定用户的注释信息
state参数:此参数用于指定用户是否存在于远程主机中,可选值有present、absent, 默认值为present,表示用户需要存在,当设置为absent时表示删除用户。
remove参数:当state的值设置为absent时,表示要删除远程主机中的用户,但是在删除用户时,不会删除用户的家目录等信息,这是因为remoove参数的默认值为no,如果设置为yes,在删除用户的同时,会删除用户的家目录,当state= absent并且remove=yes时,相当于执行"userdel -r"命令
password参数:此参数用于指定用户的密码,但是这个密码不能是明文的密码,而是一个对明文密码"加密后"的字符串,相当于/etc/shadow文件中的密码字段,是一个对明文密码进行哈希后的字符串,你可以在python的命令提示符下输入如下命令,生成明文密码对应的加密字符串。import crypt; crypt.crypt(‘666666’)输入上述命令后,即可得到明文密码666666对应的加密字符串
update_ password参数:此参数有两个值可选,always和on_ create,当此参数的值设置为always时表示,如果password参数设置的值与用户当前的加密过的密码字符串不一致,则直接更新用户的密码,状认值即为always,但是当此参数设置为on_ create时,如果password参数设置的值与用户当前的加密过的密码字符串不一致,则不会更新用户的密码字符串,保持之前的密码设定,如果是新创建的用户,即使此参数设置为on_ create, 也会将用户的密码设置i为password参数对应的值
在这里插入图片描述
在这里插入图片描述
(1)创建用户
在这里插入图片描述
查看
在这里插入图片描述
(2)删除用户并且删除家目录
在删除用户时,不会删除用户的家目录等信息,这是因为remoove参数的默认值为no,如果设置为yes,在删除用户的同时,会删除用户的家目录
在这里插入图片描述
查看
在这里插入图片描述
(3)改变初始组
在远程主机添加一个ansible组
在这里插入图片描述

在这里插入图片描述
查看
在这里插入图片描述
(4)添加附加组
远程主机添加linux组
在这里插入图片描述
在这里插入图片描述
查看
在这里插入图片描述
(5)在(4)的基础上不加append和加append的区别

先看不加append
在这里插入图片描述
查看
在这里插入图片描述
添加append
在这里插入图片描述
查看
在这里插入图片描述
(6)一次添加多个附属组
在这里插入图片描述
查看
在这里插入图片描述
(7)指定用户的过期时间
在这里插入图片描述
在这里插入图片描述
(8)指定用户的注释信息
在这里插入图片描述
在这里插入图片描述
(9)指定用户的密码

在这里插入图片描述
查看
在这里插入图片描述
(10)生成key相当于在远程主机切换到xx然后执行ssh key-gen

在这里插入图片描述
在这里插入图片描述
(11)生成key时指定保存的路径
在这里插入图片描述
在这里插入图片描述

group模块详解

group模块可以帮助我们管理远程主机上的组

name参数:必须参数,用于指定要操作的组名称。
state参数: 用于指定组的状态,两个值可选,present,absent, 默认为present, 设置为absent表示删除组。
gid参数:用于指定组的gid

(1)添加一个组
在这里插入图片描述
查看
在这里插入图片描述
(2)删除一个组
前提:这个组不能被当作主组。可以是附加组

在这里插入图片描述
查看
在这里插入图片描述
删除附加组
在这里插入图片描述
查看
在这里插入图片描述
当删除被当主组的组时
在这里插入图片描述
(3)添加组并指定gid
在这里插入图片描述
查看
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值