group#
Модуль ansible.builtin.group используется для управления группами пользователей на целевых узлах.
С его помощью можно создавать, удалять или изменять локальные группы, а также управлять их свойствами, такими как идентификатор (Group ID, GID) и список пользователей.
Описание применения модулей приведено в документе Модули.
Особенности работы#
Особенности использования модуля ansible.builtin.group:
Может создавать новые группы и удалять существующие.
Позволяет изменять параметры уже существующей группы.
Дает возможность явно указать идентификатор группы.
Поддерживает управление составом пользователей в группе.
Предназначен для использования только на POSIX-совместимых ОС. Для управления группами на узлах под управлением ОС Windows используйте модуль
ansible.windows.win_group.Для корректной работы на целевом узле должны быть доступны утилиты управления группами:
groupadd,groupmod,groupdel.
Параметры#
Модуль принимает следующие параметры:
- force#
Удаление группы даже в том случае, если она является основной для одного из пользователей.
Внимание
Пользователь не будет удален или изменен, идентификатор его основной группы останется прежним и будет равен GID удаленной группы. После принудительного удаления группы необходимо самостоятельно назначить пользователю основную группу.
Применяется только на платформах, поддерживающих флаг
--forceпри удалении группы.Возможные значения:
false– если группа используется, удаление будет отменено;true– удаление произойдет, даже если группа используется.
Значение по умолчанию:
false.
- gid#
Идентификатор (GID), который нужно назначить группе.
Если значение параметра не задано, оно будет получено автоматически путем увеличения на единицу значения последнего использованного в системе GID.
- local#
Принудительное использование команд для управления локальными группами (например,
lgroupaddвместоgroupadd) вместо доменных.Полезно в системах с централизованной аутентификацией, где необходимо управлять локальными группами.
Требует наличия соответствующих утилит на целевом узле, иначе выполнение завершится с ошибкой.
Возможные значения:
false– используются команды для управления доменными группами (например,groupadd);true– используются команды для управления локальными группами (например,lgroupadd).
Значение по умолчанию:
false.
- name#
Обязательный параметр.
Название группы, которую необходимо создать, изменить или удалить.
- non_unique#
Разрешает назначение неуникального GID для группы.
Используется только совместно с
gid.Примечание
Не поддерживается в macOS и системах на базе BusyBox.
Возможные значения:
false– GID должен быть уникален;true– разрешено использование существующего GID.
Значение по умолчанию:
false.
- state#
Требуемое состояние группы на удаленном узле.
Возможные значения:
present– группа будет создана, если не существует;absent– группа будет удалена, если существует.
Значение по умолчанию:
present.
- system#
Определяет, является ли создаваемая группа системной.
Возможные значения:
false– обычная (пользовательская) группа;true– системная группа.
Значение по умолчанию:
false.
Возвращаемые значения#
В этом списке указаны только возвращаемые значения, специфичные для модуля ansible.builtin.group.
gid– идентификатор группы, назначенный при создании.Условия:
state=present.name– название группы.Условия: всегда.
state– статус группы на целевом узле.Условия: всегда.
system– признак того, является ли группа системной.Условия:
state=present.
Атрибуты#
Атрибуты определяют функции Ansible, которые может использовать модуль.
Атрибут |
Описание |
|---|---|
|
Модуль поддерживает режим проверки. |
|
Модуль не поддерживает режим сравнения. |
|
Модуль поддерживает только POSIX-совместимые ОС. |
Примеры#
Для изучения возможностей модуля ознакомьтесь с приведенными ниже примерами.
Создание новой группы#
Следующий пример описывает создание новой группы admins.
---
- name: Create a group 'admins'
ansible.builtin.group:
name: admins
state: present
Создание группы с пользователями#
Следующий пример описывает создание группы devs и добавление в нее пользователей.
---
- name: Add users to a group
ansible.builtin.group:
name: devs
state: present
users:
- developer
- devops
Создание системной группы с заданным GID#
Следующий пример описывает создание системной группы sysops с идентификатором 200.
---
- name: Create a system group with GID 200
ansible.builtin.group:
name: sysops
gid: 200
system: true
Удаление группы#
Следующий пример описывает удаление существующей группы tempgroup.
---
- name: Remove group 'tempgroup'
ansible.builtin.group:
name: tempgroup
state: absent
Принудительное удаление группы#
Следующий пример описывает удаление группы oldgroup, даже если в ней есть активные пользователи.
---
- name: Forcibly remove a group even if in use
ansible.builtin.group:
name: oldgroup
state: absent
force: true