1.managed文件管理

/srv/salt/file/managed.sls

/tmp/hyxc:
file.managed:
- source:
- salt://files/hyxc
- salt://files/hwg
- makedirs: True
# - replace: False
- user: root
- group: root
- mode: 644
- backup: minion
- template: jinja

执行如下命令完成源文件管理

salt 'test82.salt.cn' state.sls file.managed

若文件之前存在,且源文件相对有更改,则管理后在/var/cache/salt/minion/file_backup/可看见该文件的备份文件

2.append文件管理

/srv/salt/file/append.sls

/tmp/hyxc:
file.append:
- text: |
hyxc

执行如下命令在文件末尾添加一行

salt 'test82.salt.cn' state.sls file.append

3.recurse递归管理文件

/srv/salt/file/recurse.sls

/tmp/hwg:
file.recurse:
- source: salt://files/hwg
- user: nobody
- group: nobody
- file_mode: 644
- dir_mode: 755
- include_empty: Ture
# - clean: Ture
# - exclude_pat: E@(hh)
# - include_pat: E@(ss)

执行如下命令完成文件递归管理

salt 'test82.salt.cn' state.sls file.recurse

4.directory目录管理

/srv/salt/file/directory.sls

/tmp/hwg:
file.directory:
- user: root
- group: root
- dir_mode: 755
- file_mode: 644
- makedirs: True
- recurse:
- user
- group
- mode

执行如下命令即可创建目录

salt 'test82.salt.cn' state.sls file.directory

5.absent删除文件或目录

/srv/salt/file/absent.sls

/tmp/hwg:
file.absent:
- name: /tmp/hwg

执行如下命令删除文件

salt 'test82.salt.cn' state.sls file.absent

或在命令行执行如下

salt '*' file.remove /tmp/hyxc

6.注释文件的指定行,取消注释用uncomment

/srv/salt/file/comment.sls

/tmp/hyxc:
file.comment:
- regex: ^text 2
- backup : .bak
- char: #

命令行执行如下命令完成注释

salt 'test82.salt.cn' state.sls file.comment

7.rename重命名文件

/srv/salt/file/rename.sls

/tmp/jim:
file.rename:
- source: /tmp/hwg

命令行执行如下命令实现重命名

salt 'test82.salt.cn' state.sls file.rename

8.replace替换文件内容

/srv/salt/file/replace.sls

/tmp/hyxc:
file.replace:
- pattern: |
jim
- repl: |
hyxc

命令行执行如下命令进行替换

salt 'test82.salt.cn' state.sls file.replace

或命令行直接执行如下

salt '*' file.replace /path/to/file pattern='=' repl=':'

9.exists检查文件是否存在

/srv/salt/file/exists.sls

/tmp/hyxc:
file.exists:
- name: /tmp/hyxc

命令行执行如下命令检查

salt 'test82.salt.cn' state.sls file.exists

或在命令行直接执行如下命令

salt 'test82.salt.cn' file.file_exists /etc/passwd

10. 命令行执行命令

更改文件属主属组

salt '*' file.chown /etc/passwd root root

更改文件属组

salt '*' file.chgrp /etc/passwd root

saltstack之文件管理的更多相关文章

  1. saltstack布署实践 【配置文件管理-state模块】

    那如果要批量修改被管机器的某个配置文件怎么做?以下给出一个最简单案例.   先在主管机器master上查看/etc/salt/master配置文件 看到有以下几行配置文件   # file_roots ...

  2. 部署搭建 Saltstack(centos6.6)

    SaltStack介绍 官网:https://docs.saltstack.com/en/latest/ 中国saltstack用户组http://www.saltstack.cn/ 下图是它的子系统 ...

  3. saltstack之(六)配置管理state

    配置管理是saltstack工具最重要的模块之一,也是学习saltstack之后使用最多的一个功能.可以轻松实现上百台上千台甚至上万台服务器的管理工作. 1.使用state模块进行配置管理,编写sls ...

  4. saltstack实战4--综合练习2

    Saltstack配置管理-功能模块-安装haproxy 配置管理,我们分了3层 最底层是系统初始化部分 倒数二层是功能模块,就是具体的产品的安装了 假如你的环境需要nginx,php,memcach ...

  5. saltstack实战4--综合练习1

    规范配置管理 实际工作中可能会有现网环境,基线环境,开发环境. 需要使用saltstack统一管理.机器多了,业务多了,可能配置文件存放的会比较乱,因此可以统一管理起来 我们可以再加2个目录,test ...

  6. saltstack实战3--配置管理之grains

    grains是什么 grains是minion服务启动后,采集的客户端的一些基本信息,硬件信息,软件信息,网络信息,软件版本等.你可以在minion上自定义一些grains信息. 它是静态的信息,mi ...

  7. Saltstack 安装使用

    Saltstack是一个具备puppet与func功能为一身的集中化,轻量级的自动化运维管理工具,使用python编写,功能非常强大,可以使用EPEL快速安装.相比较puppet,安装和配置更加容易和 ...

  8. saltstack布署实践 【安装】

    借用链接http://www.cnblogs.com/liuyansheng/p/6094122.html的安装方式,我再同步一下其它操作系统的安装方式,由原Docker官网拷贝 Ubuntu1404 ...

  9. Saltstack批量编译部署nginx(多模块)

    最近一直在研究saltstack的同步文件和批量执行命令,随着架构的变大,批量部署的需求也变得明显起来了,我需要用一条命令就部署好nginx和tomcat,并且符合我所有的环境需求,可以直接投入生产环 ...

随机推荐

  1. Linux常用网络带宽监控工具(转)

    本文介绍了一些可以用来监控网络使用情况的Linux命令行工具.这些工具可以监控通过网络接口传输的数据,并测量目前哪些数据所传输的速度.入站流量和出站流量分开来显示. 一些命令可以显示单个进程所使用的带 ...

  2. IntelliJ IDEA 14.x 的 project 和 module 是啥关系?

    使用基于IntelliJ的IDE,如phpstorm.android studio都会对project和module的关系比较糊涂,简单的概括如下: IntelliJ系中的 Project 相当于Ec ...

  3. 在SQL Server中查看对象依赖关系

    原文 在SQL Server中查看对象依赖关系 Viewing object dependencies in SQL Server   Deleting or changing objects may ...

  4. DELPHI的一些开源项目GIT地址

    DELPHI的一些开源项目GIT地址 Delphi-Cross-Sockethttps://github.com/winddriver/Delphi-Cross-Socket 跨平台的SOCKET库 ...

  5. Go -- 在Go语言中使用JSON struct

    Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: func Marshal(v interface{}) ([]byte, error) ...

  6. Makefile之嵌套执行make

    1.在Makefile中 一般使用一个总控Makefile来指明文件的编译规则 如: subsystem: cd subdir && $(MAKE) 其等价于 subsystem: $ ...

  7. setlocal启动批处理文件中环境变量的本地化

    setlocal启动批处理文件中环境变量的本地化 在执行 SETLOCAL 之后所做的环境改动只限于批处理文件.要还原原先的设置,必须执行 ENDLOCAL. 学习了:https://baike.ba ...

  8. JAVA Eclipse Incorrect line ending found carriage return 怎么办

    点击项目-清理即可    

  9. Fragment生命周期和Activity生命周期的关系

    Fragment生命周期: 重点回调函数: 1. onAttach()当碎片和活动建立关联的时候调用.2. onCreateView()为碎片创建视图(加载布局)时调用.3. onActivityCr ...

  10. 【转】oracle建立本地数据库

    来到公司的这段时间,在项目的开发过程中一直连接的是远程的oracle数据库,现在开始轮到自己做毕业设计了,自己想采用Oracle数据库,就想建立本地的数据库. 当然了,首先是自己先装Oracle客户端 ...