目录
参数总结
语法示例
创建用户组
删除用户组
设置组的 GID
创建系统组
修改组的 GID
添加用户组并附加其他组属性
删除指定 GID 的用户组
帮助信息
Playbook示例
基本示例
1. 创建用户组
2. 删除用户组
进阶示例
1. 修改组的 GID
2. 综合管理多个用户组
3. 创建用户组并附加其他组属性
group
模块用于管理系统中的用户组。它可以创建、修改和删除用户组,以及为组设置特定的属性。在 YAML Playbook 和命令行中都可以使用这个模块来进行组管理。下面是 group
模块的一些常见用法示例:
参数总结
-
name
:- 描述:要管理的组的名称。
- 类型:字符串
- 必需:是
-
gid
:- 描述:设置组的 GID。
- 类型:整数
-
state
:- 描述:组的目标状态。
- 可选值:
present
:确保组存在absent
:确保组不存在
- 类型:字符串
- 默认值:
present
-
system
:- 描述:如果为
yes
,则创建系统组。 - 类型:布尔值
- 默认值:
no
- 描述:如果为
-
local
:- 描述:如果为
yes
,则仅在本地管理组,不进行 LDAP 等集中式管理。 - 类型:布尔值
- 默认值:
no
- 描述:如果为
语法示例
创建用户组
创建一个名为 developers
的组:
ansible all -m group -a "name=developers state=present"
删除用户组
删除名为 developers
的组:
ansible all -m group -a "name=developers state=absent"
设置组的 GID
创建一个名为 staff
且 GID 为 1050
的组:
ansible all -m group -a "name=staff gid=1050 state=present"
创建系统组
创建一个名为 sysadmins
的系统组:
ansible all -m group -a "name=sysadmins system=yes state=present"
修改组的 GID
修改现有组 developers
的 GID 为 2000
:
ansible all -m group -a "name=developers gid=2000 state=present"
添加用户组并附加其他组属性
创建一个名为 admins
的组,并确保其他属性:
ansible all -m group -a "name=admins gid=1500 system=yes state=present"
删除指定 GID 的用户组
删除 GID 为 1002
的组:
ansible all -m group -a "gid=1002 state=absent"
帮助信息
查看 group
模块的帮助信息:
ansible-doc group
Playbook示例
基本示例
1. 创建用户组
创建一个名为 developers
的组:
---
- name: Create a group named developershosts: alltasks:- name: Create group developersgroup:name: developersstate: present
2. 删除用户组
删除名为 developers
的组:
---
- name: Remove a group named developershosts: alltasks:- name: Remove group developersgroup:name: developersstate: absent
3. 设置组的 GID
创建一个名为 staff
且 GID 为 1050
的组:
---
- name: Create a group named staff with GID 1050hosts: alltasks:- name: Create group staff with GID 1050group:name: staffgid: 1050state: present
4. 创建系统组
创建一个名为 sysadmins
的系统组:
---
- name: Create a system group named sysadminshosts: alltasks:- name: Create system group sysadminsgroup:name: sysadminssystem: yesstate: present
进阶示例
1. 修改组的 GID
修改名为 developers
的组的 GID 为 2000
:
---
- name: Change GID of the group developershosts: alltasks:- name: Update GID of developers group to 2000group:name: developersgid: 2000state: present
2. 综合管理多个用户组
同时创建、修改和删除多个用户组:
---
- name: Comprehensive management of user groupshosts: alltasks:- name: Create group developersgroup:name: developersstate: present- name: Create group staff with GID 1050group:name: staffgid: 1050state: present- name: Create system group sysadminsgroup:name: sysadminssystem: yesstate: present- name: Remove group oldgroupgroup:name: oldgroupstate: absent
3. 创建用户组并附加其他组属性
创建一个名为 admins
的组,并确保其他属性:
---
- name: Create and configure admins grouphosts: alltasks:- name: Ensure group admins exists with GID 1500 as a system groupgroup:name: adminsgid: 1500system: yesstate: present
综合示例如下:
---
- name: Comprehensive management of user groupshosts: alltasks:- name: Create group developersgroup:name: developersstate: present- name: Create group staff with GID 1050group:name: staffgid: 1050state: present- name: Create system group sysadminsgroup:name: sysadminssystem: yesstate: present- name: Remove group oldgroupgroup:name: oldgroupstate: absent- name: Change GID of group developers to 2000group:name: developersgid: 2000state: present