saltstack初窥——文件管理

 

文档:http://docs.saltstack.com/ref/states/all/salt.states.file.html

本文中用的top.sls

/srv/salt/top.sls
test:
  'minion1':
    - file

##

创建

1. 空文件
/srv/salt/test/file.sls

/tmp/a.txt:
  file.managed
**2\. 根据模板文件生成文件** /srv/salt/test/file.sls
/tmp/a.txt:
  file.managed:
    - source: salt://files/a.txt
/srv/salt/test/files/a.txt
just a test
**3\. 根据变量生成文件** /srv/salt/test/file.sls
/tmp/a.txt:
  file.managed:
    - source: salt://files/a.txt
    - template: jinja
/srv/salt/test/files/a.txt

**4\. 创建多个文件**
/srv/salt/test/file.sls

/tmp/a:
  file.managed:
    - source: salt://files/tmp
    - template: jinja 

/tmp/b:
  file.managed:
    - source: salt://files/tmp
    - template: jinja 

/tmp/c:
  file.managed:
    - source: salt://files/tmp
    - template: jinja 

删除

/srv/salt/test/file.sls

/tmp/a.txt:
  file.absent

###
添加内容
/srv/salt/test/file.sls

/tmp/a.txt:
  file.append:
    - text:
      - 'this is append line1'
      - 'this is append line2'
  ### 重命名 /srv/salt/test/file.sls
/tmp/new:
  file.rename:
    - source: /tmp/old

目录

/srv/salt/test/file.sls

/var/log/httpd:
    file.directory:
    - user: root
    - group: root
    - dir_mode: 755
    - file_mode: 644
    - recurse:
        - user
        - group
        - mode

###
sed
/srv/salt/test/file.sls

/etc/yum.repos.d/epel.repo:
  file.sed:
    - before: 1
    - after: 0
    - limit: ^enabled=

软连

/srv/salt/test/file.sls

/tmp/new:
  file.symlink:
    - target: /tmp/old

是否存在

/srv/salt/test/file.sls

/tmp/new:
file.exists