源码包安装: clamav_source: file.managed: - name: /tmp/clamav-0.99.2.tar.gz - unless: test -f /tmp/clamav-0.99.2.tar.gz //如果没有这个文件,才会执行。 - source: salt://clamav/package/clamav-0.99.2.tar.gz clamav_unzip: cmd.run: - cwd: /tmp - name: tar -zxf clamav-0.99.2.tar.gz - unless: test -f /tmp/clamav-0.99.2 - require: - file: clamav_source clamav_pkg: pkg.installed: - names: - gcc //源码安装需要编译器 - make clamav_install: cmd.run: - cwd: /tmp/clamav-0.99.2 - unless: test - name: ./configure --prefix=/usr/local/clamav && make && make install - require: - cmd: clamav_unzip - pkg: clamav_pkg 同步配置文件: conf_file1: file.managed: - name: /usr/local/clamav/etc/clamd.conf - source: salt://clamav/conf_file/clamd.conf - unless: test -f /usr/local/clamav/etc/clamd.conf conf_file2: file.managed: - name: /usr/local/clamav/etc/freshclam.conf - source: salt://clamav/conf_file/freshclam.conf - unless: test -f /usr/local/clamav/etc/freshclam.conf 创建用户: create_user: user.present: - name: clamav - require: - group: creat_group - groups: - clamav creat_group: group.present: - name: clamav 创建目录和文件: create_dir: cmd.run: - name: mkdir /usr/local/clamav/logs && mkdir /usr/local/clamav/updata create_log: cmd.run: - name: touch /usr/local/clamav/logs/clamd.log && touch /usr/local/clamav/logs/freshclam.log - require: - cmd: create_dir 文件授权: change_perm: cmd.run: - name: chown clamav.clamav /usr/local/clamav/logs/clamd.log && chown clamav.clamav /usr/local/clamav/logs/freshclam.log && chown clamav.clamav /usr/local/clamav/updata - require: - cmd: create_log - cmd: create_user
注:应把所需要的文件,复制到对应文件夹中。