6

私は Ansible の初心者で、Ad-Hoc コマンドreplaceを使用してファイルに文字列を書き込もうとしています。モジュールをいじろうとしています。書き込もうとしているファイルは/etc/motd/.

ansible replace --sudo /etc/motd "This server is managed by Ansible"

どんな助けでも感謝します!

4

1 に答える 1

7

lineinfileモジュールの使用法とアドホック コマンドの一般的な構文を参照してください。

あなたが探しているものは次のとおりです。

ansible target_node -b -m lineinfile -a 'dest=/etc/motd line="This server is managed by Ansible"'

拡張形式:

ansible target_node --become --module-name=lineinfile --args='dest=/etc/motd line="This server is managed by Ansible"'

説明:

  • target_nodeAnsibleインベントリ ファイルで定義されているホスト名またはグループ名です。

  • --become( -b) Ansible に使用するように指示しますsudo

  • -module-name( -m) は実行するモジュールを指定します (lineinfileここ)

  • --args( -a) モジュールに引数を渡します (これらはモジュールによって異なります)

    • dest宛先ファイルを指す
    • line特定の行がファイル内にあることを確認するように Ansible に指示します

の内容全体を置き換えたい場合は、module/etc/motdを使用する必要があります。copy

ansible target_node -b -m copy -a 'dest=/etc/motd content="This server is managed by Ansible"'

それに応じて引数の 1 つが変更されていることに注意してください。

于 2016-12-22T23:40:51.943 に答える