LoginSignup
90
82

More than 3 years have passed since last update.

Ansible ~fileモジュール~

Last updated at Posted at 2014-11-16

Ansible Documentationのfileモジュールの内容のメモです。

Ansible Documentation

概要

  • ファイル、シンボリックリンク、ディレクトリの設定や削除をします。他の多くのモジュールはfileモジュールと同じオプションをサポートします。

オプション

頻度 パラメータ 必須 デフォルト値 選択肢 説明
follow no no yes
no
既にファイルが存在する場合置き換えない。(要確認)
force no no yes
no
下記2ケースにおいてシンボリックリンクを強制的に作成する
・シンボリックリンク先のファイルが存在しない
・シンボリックリンク先のファイルが存在している("path"で指定したファイルのリンクを解除し、"src"で指定したファイルへのシンボリックリンクを作成する)。
group no - - chownコマンドで設定できる所有者グループの設定。
mode no - - chmodコマンドで設定できる権限設定。8進数の指定とシンボリックモード(例を参照)での指定が可能。
owner no - - chownコマンドで設定できる所有者ユーザの設定。
path yes - - ファイルパスの指定。
recurse no no yes
no
再帰的にファイル属性を変更するか(state=directoryの場合のみ)。
selevel no s0 - selinuxのレベル。
serole no - - selinuxのロール。
setype no - - selinuxのタイプ。
seuser no - - selinuxのユーザ。
src no - - 実体ファイルのパスを指定(state=linkの場合のみ)
state no file file
link
directory
hard
touch
absent
file: ファイルが既に存在する場合に指定。もし存在しない場合、copyモジュールやtemplateモジュールを使用する。
link: シンボリックリンクの場合に指定。
directory: ディレクトリの場合に指定。存在しない場合サブディレクトリとして作成される。権限は上位から継承される。(要確認)
hard: ハードリンクの場合の指定。
touch: pathで指定したファイルが存在しない場合、空ファイルを作成する。既にファイルが存在する場合、タイムスタンプが更新される。
absent: ディレクトリやファイル、シンボリックリンクの削除。

example.yml
- file: path=/etc/foo.conf owner=foo group=foo mode=0644
- file: src=/file/to/link/to dest=/path/to/symlink owner=foo group=foo state=link
- file: src=/tmp/{{ item.path }} dest={{ item.dest }} state=link
  with_items:
    - { path: 'x', dest: 'y' }
    - { path: 'z', dest: 'k' }

# touch a file, using symbolic modes to set the permissions (equivalent to 0644)
- file: path=/etc/foo.conf state=touch mode="u=rw,g=r,o=r"

# touch the same file, but add/remove some permissions
- file: path=/etc/foo.conf state=touch mode="u+rw,g-wx,o-rwx"

参考

90
82
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
90
82