Menambahkan pengguna ke grup tambahan menggunakan yang dimungkinkan

55

Bagaimana saya bisa menambahkan pengguna ke grup tambahan di ansible? Saya tidak ingin kumpulan grup yang ada diganti, hanya tambahkan pengguna ke sudogrup.

vdboor
sumber

Jawaban:

48

Menurut modul Pengguna Anda dapat menggunakan ini:

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

Anda bisa menambahkan groups=groupnamedan append=yesmenambahkannya ke pengguna yang ada saat Anda membuatnya

art3mis
sumber
2
Terima kasih, append=yesmemang itulah yang saya cari!
vdboor
1
Tampaknya ada masalah dengan ini: bagaimana jika pengguna sudah ada dan saya hanya ingin menambah atau menghapusnya dari grup? Saya tidak 100% yakin tetapi saya berpikir bahwa atribut "grup" hanya dipertimbangkan ketika membuat pengguna.
jlecour
2
Saya benar-benar memiliki masalah dengan ini menjadi jawaban yang diterima, karena pertanyaannya tidak menyatakan "buat pengguna dan tambahkan ke grup tertentu". Jika kami berasal dari pencarian Google karena judul pertanyaan, kemungkinan besar kami ingin menambahkan pengguna yang ada ke grup.
Daniel F
72

Jika {{ user }}sudah ada dalam sistem, Anda harus menggunakan yang berikut ini untuk menambahkannya ke grup:

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

Untuk menambahkannya ke sekelompok grup, Anda dapat menggunakan daftar yang dipisahkan koma, misalnya groups: admin,sudo.

Berhati-hatilah bahwa jika Anda menghilangkan append: yes, pengguna Anda akan dihapus dari semua grup lain, menurut halaman manual usermod . Itu akan berguna jika Anda ingin menggunakan daftar grup tertentu yang harus dimiliki pengguna.

Teresa e Junior
sumber
12
... dan berhati-hatilah untuk tidak menulis group:tanpa s, karena ini akan mengubah GID utama.
Serge Stroobandt
... dan berhati-hatilah bahwa jika pengguna tidak ada itu akan dibuat!
EM0
@ EM0 Ya, usermodul ini seharusnya membuat pengguna jika mereka tidak ada, namun, pengguna harus meninjau kode-nya jika dia mencoba untuk memodifikasi pengguna yang bahkan tidak seharusnya ada.
Teresa e Junior