ansible笔记-(4)-常用模块-文件 *** 作

ansible笔记-(4)-常用模块-文件 *** 作,第1张

blockinfile模块可以帮助我们在指定的文件中插入一段“文本”,这段文件是被标记的,换句话说就是,我们在这段文件上做了记号,以便在以后的 *** 作可以通过“标记”找到这段文本。然后进行修改或删除。单靠这样的描述不容易理解,结合下面的示例应该就很快的明白了。敬歼念

为方便举例,我们将/etc/rc.d/rc.local文件复制到/testdir目录中去,以做测试 :cp cp /etc/rc.d/rc.local /testdir/

我们在/testdir/rc.local文件末尾添加两行命令

我们可以借用lineinfile模块,确保“某一行文本”存在于指定的文亮困件中,或者确保从文件中删除指定文本改闹(即确保指定的文本不存在于文件中)。还可以根据正则表达式,替换“某一行文件” 通俗的讲这个相当于liunx的sed命令。

接下来我们看一下lineinfile模块常用的一些参数

我们新建立files文件

==============================================================

ansible 主机信息(可以是组) -m 模块名称 -a "完成动作"

举例:

在ansible中 使用ansible-doc <模块名称>来查看单独模块用法

常用参数

官方模块说明: https://docs.ansible.com/ansible/latest/modules/command_module.html#command-module

参数:宴州chdir--在执行命令 *** 作前进行切换目录

参数:creates--判断一个文件是否存在,如果存在后面的命令就不会执行

参数:removes--判断一个文件是否存在,如果不存在,后续的命令不会被执行

官方模块说明: https://docs.ansible.com/ansible/latest/modules/shell_module.html#shell-module

参数chdir:在执行命令前进行目录切换

参数:creates----判断一个文件是否存在,如果存在,后续命令不会执行

参数:removes--判断一个文件是否存在,如果不存在则候命的命令不会执行

官网模猜毕块说明: https://docs.ansible.com/ansible/latest/modules/script_module.html#script-module

使用这个模块需要注意的

官方模块说明: https://docs.ansible.com/ansible/latest/modules/yum_module.html#yum-module

参数:name--指定安装软件的名称

参数:state--指定软件安装或卸载

在这个模块中卸载使用 removed 安装使用installed注意看示例

官网模块说明: https://docs.ansible.com/ansible/latest/modules/service_module.html#service-module

官网模块说明: https://docs.ansible.com/ansible/latest/modules/copy_module.html#copy-module

参数:src--指定管理端源数据

参数:dest--分发到远程主机的目标路径下

参数:owner--专属文件之后修改文件属主

参数:group--传输文件之后修改文件属组

参数:mode--修改文件的读、写、执行穗祥芹权限

参数:backup--在分发传输文件之前,将源文件进行备份,按照时间信息进行备份

参数remote_src--no表示从管理端找寻数据进行分发yes 默认从被管理端找寻数据进行分发

参数content--分发文件时在文件中穿件简单信息

官网模块说明: https://docs.ansible.com/ansible/latest/modules/fetch_module.html#fetch-module

参数:src--要拉取的远程数据

参数:dest--要保存本地的文件路径

官方说明: https://docs.ansible.com/ansible/latest/modules/file_module.html#file-module

path:指定路径信息

owner:传输文件之后修改文件属主权限

group:传输文件后修改属组权限

mode:直接修改文件读、写、执行权限

state:touch(创建文件)、directory(创建目录)、hard(创建硬链接文件) link(创建软链接文件)、absent(删除数据)

创建件目录:

创建文件:

删除数据信息:

官方说明: https://docs.ansible.com/ansible/latest/modules/mount_module.html#mount-module

参数:src--指定要挂载数据

参数:path--指定挂载点

**参数:fstype--指定挂载后,文件系统类型 如:ext3、ext4、xfs、nfs **

参数:state--指定动作 如:mounted(挂载)、present(永久挂载)、umounted(临时卸载) absent(永久卸载)

挂载:

官方说明: https://docs.ansible.com/ansible/latest/modules/cron_module.html#cron-module

name: 定义定时任务注释信息

参数:minute --表示分钟信息

参数:hour --表示小时信息

参数:day --表示日期信息

参数:month --表示月份信息

参数:weekday --表示星期信息

参数:job --表示定义任务信息

参数:state --指定动作 如:present(创建定时任务)、absent(删除定时任务)

参数:disabled: 让定时任务临时失效

利用ansible编写时间同步定时任务:每隔5分钟,进行时间同步:

删除定时任务:

注释定时任务:

官网说明: https://docs.ansible.com/ansible/latest/modules/group_module.html#group-module

参数:name--指点组名

参数:gid--指定gid

参数:state--指定动作 present(创建) absent(删除)

官方说明: https://docs.ansible.com/ansible/latest/modules/user_module.html#user-module

参数:name--指定用户名称

参数:uid--指定用户uid信息

参数:group--指定属组

参数:groups--指定属于附加组

参数:password—-指定用户密码信息(必须密文的信息)

参数:shell—-指定用户shell信息 /sbin/nologin

参数:create_home--no表示不创建家目录

创建用户:

删除用户:

**方法一:利用ansible模块功能

ansible all -i localhost, -m debug -a "msg={{ 'mypassword' | password_hash('sha512', 'mysecretsalt') }}"

mypassword: 指定明文密码信息

mysecretsalt:加密计算方式(辅助加密)

方法二:利用python模块功能

使用这种方法需要安装python-pip

如果安装不上需要更新pip源,更新方法:

更新pip源:

==============================================================

Linux


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12275346.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存