ansible之group模塊
group模塊是用來添加或者刪除組
首先使用ansible-doc來查看用法
[root@note0 ansible]# ansible-doc -s group - name: Add or remove groups group: gid: # Optional `GID' to set for the group. local: # Forces the use of "local" command alternatives on platforms that implement it. This is useful in environments that use centralized authentication when you want to manipulate the local groups. (e.g. it uses `lgroupadd' instead of `groupadd'). This requires that these commands exist on the targeted host, otherwise it will be a fatal error. name: # (required) Name of the group to manage. non_unique: # This option allows to change the group ID to a non-unique value. Requires `gid'. Not supported on macOS or BusyBox distributions. state: # Whether the group should be present or not on the remote host. system: # If `yes', indicates that the group created is a system group.
通過上面的參數列表我們可以了解到group模塊有幾個重要屬性
OPTIONS (= is mandatory):選項前面為=的為必填參數
一、name
= name
Name of the group to manage.
type: str
要操作的group的組名,string類型,必填項
用法
[root@note0 ~]# ansible local -m group -a "name=test" 176.16.128.1 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, #可以看到changed狀態為true,代表已經在主機添加組成功。 "gid": 1000, "name": "test", "state": "present", "system": false }
查看主機/etc/group文件驗證
[root@note1 ~]# cat /etc/group test:x:1000:
二、state
- state
Whether the group should be present or not on the remote host.
(Choices: absent, present)[Default: present]
type: str
state用於指定用戶組在遠程主機上是否被更改或刪除,string類型。
有兩個選項:absent,present。默認值為present,absent為刪除組。
用法,我們來刪除一下剛才創建的組
[root@note0 ~]# ansible local -m group -a "name=test state=absent" 176.16.128.1 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, "name": "test", "state": "absent" }
三、gid
- gid Optional `GID' to set for the group. [Default: (null)] type: int
gid用於設定用戶組gid,int類型,默認值為空
用法
[root@note0 ~]# ansible local -m group -a "name=test gid=1005 state=present" 176.16.128.1 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, "gid": 1005, "name": "test", "state": "present", "system": false }
查看主機/etc/group文件
[root@note1 ~]# cat /etc/group test:x:1005:
我們可以新創建的組gid為1005
四、system
- system If `yes', indicates that the group created is a system group. [Default: False] type: bool
system用於指定創建的用戶組是否為系統組,布爾類型,可用選項false,true,默認為false
用法
[root@note0 ~]# ansible local -m group -a "name=test state=present system=true" 176.16.128.1 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, "gid": 994, "name": "test", "state": "present", "system": true }
查看主機/etc/group文件驗證
[root@note1 ~]# cat /etc/group test:x:994:
可以看到test組的gid為994,gid小於1000為系統組。