การเพิ่มผู้ใช้ไปยังกลุ่มเพิ่มเติมโดยใช้ ansible


55

ฉันจะเพิ่มผู้ใช้ในกลุ่มพิเศษในการสำรวจได้อย่างไร ฉันไม่ต้องการเปลี่ยนกลุ่มชุดเดิมให้เพิ่มผู้ใช้ใน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 เนื่องจากชื่อคำถามเราน่าจะต้องการเพิ่มผู้ใช้ที่มีอยู่ในกลุ่ม
Daniel F

72

หาก{{ user }}มีอยู่แล้วในระบบคุณควรใช้รายการต่อไปนี้เพื่อเพิ่มลงในกลุ่ม:

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

groups: admin,sudoเพื่อเพิ่มลงในชุดของกลุ่มคุณสามารถใช้เครื่องหมายจุลภาคคั่นรายการตัวอย่างเช่น

เพียงแค่ระวังว่าถ้าคุณไม่ใช้append: yesผู้ใช้ของคุณจะถูกลบออกจากกลุ่มอื่น ๆ ทั้งหมดตามหน้าคน usermod ซึ่งจะมีประโยชน์หากคุณต้องการใช้รายการกลุ่มเฉพาะที่ผู้ใช้ควรอยู่


12
…และระวังไม่ให้เขียนgroup:โดยไม่ต้องsเนื่องจากจะเปลี่ยน GID หลัก
Serge Stroobandt

... และระวังว่าหากผู้ใช้ไม่มีอยู่มันจะถูกสร้างขึ้น!
EM0

@ EM0 ใช่userโมดูลควรจะสร้างผู้ใช้หากไม่มีอยู่อย่างไรก็ตามผู้ใช้ควรตรวจสอบรหัสของเขาหากเขาพยายามแก้ไขผู้ใช้ที่ไม่ควรมีอยู่
Teresa e Junior
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.