ansibleを使用して追加グループにユーザーを追加する


55

ansibleの追加グループにユーザーを追加するにはどうすればよいですか?既存のグループのセットを置き換えたくないので、sudoグループにユーザーを追加するだけです。

回答:


48

ユーザーモジュールによると、これを使用できます。

- name: Adding user {{ user }}  
  user: name={{ user }}
        group={{ user }}
        shell=/bin/bash
        password=${password}
        groups=sudo
        append=yes

あなただけ追加することができますgroups=groupnameし、append=yesあなたがそれらを作成しているとき、既存のユーザーに追加します


2
おかげで、append=yesまさに私が探しているものです!
vdboor

1
これには問題があるようです。ユーザーが既に存在し、グループに追加または削除したい場合はどうなりますか?100%確信はありませんが、「グループ」属性はユーザーの作成時にのみ考慮されると思います。
-jlecour

2
質問には「ユーザーを作成して特定のグループに追加する」とは記載されていないため、これが受け入れられる回答であるという問題が本当にあります。質問のタイトルのためにGoogleの検索から来た場合、既存のユーザーをグループに追加することをお勧めします。
ダニエルF

72

{{ user }}システムに既に存在する場合、次を使用してグループに追加するだけです。

- name: adding existing user '{{ user }}' to group sudo
  user:
    name: '{{ user }}'
    groups: sudo
    append: yes

グループのセットに追加するには、などのカンマ区切りリストを使用できますgroups: admin,sudo

usermodのmanページにappend: yesよると、省略した場合、他のすべてのグループからユーザーが削除されることに注意してください。ユーザーが属するグループの特定のリストを使用する場合に役立ちます。


12
…そして、これがプライマリGIDを変更するgroup:ためs、なしで記述しないように注意してください。
サージストローバンド

...そして、ユーザーが存在しない場合は作成されることに注意してください!
EM0

@ EM0はい、user存在しない場合、モジュールはユーザーを作成することになっていますが、存在するはずのないユーザーを変更しようとする場合、ユーザーはコードを確認する必要があります。
テレサジュニア
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.