Spec-Zone.ru › Ansible

community.general.interfaces_file модуль – Настройка параметров в файлах /etc/network/interfaces

Примечание

Этот модуль является частью коллекции community.general (версия 9.5.0).

У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.general.

Чтобы использовать её в playbook, укажите: community.general.interfaces_file.

  • Обзор
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Управление (добавление, удаление, изменение) отдельных параметров интерфейса в файлах в стиле interfaces, без необходимости управления самим файлом целиком, например, с помощью ansible.builtin.template или ansible.builtin.assemble. Интерфейс должен быть представлен в файле.
  • Чтение информации об интерфейсах из файлов в стиле interfaces.

Параметры

Параметр

Комментарии

address_family

строка

Семейство адресов интерфейса, полезно, если одно и то же имя интерфейса используется для inet и inet6.

attributes

псевдонимы: attr

строка

Атрибуты, которые должен иметь результирующий файловый объект.

Чтобы получить поддерживаемые флаги, обратитесь к справке для chattr на целевой системе.

Эта строка должна содержать атрибуты в том же порядке, что и в lsattr.

Оператор = предполагается по умолчанию, в противном случае операторы + или - должны быть включены в строку.

backup

булево

Создать резервную копию файла, включая информацию о времени, чтобы вы могли восстановить исходный файл, если вы неправильно его испортили.

Варианты:

  • false ← (по умолчанию)
  • true

dest

путь

Путь к файлу интерфейсов.

По умолчанию: "/etc/network/interfaces"

group

строка

Имя группы, которая должна владеть файловым объектом, как и при использовании chown.

Если не указано, используется текущая группа текущего пользователя, если вы не root, в этом случае сохраняется предыдущая собственность.

iface

строка

Имя интерфейса, необходимое для изменения значений или удаления опций.

mode

любой

Разрешения, которые должен иметь результирующий файловый объект.

Для тех, кто привык к /usr/bin/chmod, помните, что режимы — это фактически восьмеричные числа. Вы должны предоставить Ansible достаточно информации, чтобы правильно их разобрать. Для согласованных результатов заключайте восьмеричные числа в кавычки (например, '644' или '1777') для того, чтобы Ansible получал строку и мог самостоятельно переводить ее из строки в число. Добавление ведущего нуля (например, 0755) иногда работает, но может привести к ошибкам в циклах и некоторых других обстоятельствах.

Предоставление Ansible числа без соблюдения любого из этих правил приведет к десятичному числу, что даст неожиданные результаты.

Начиная с Ansible 1.8, режим может быть указан в символьном виде (например, u+rwx или u=rw,g=r,o=r).

Если mode не указано и целевой файловый объект не существует, по умолчанию используется umask на системе при установке режима для вновь созданного файлового объекта.

Если mode не указано и целевой файловый объект существует, используется режим существующего файлового объекта.

Указание mode — лучший способ гарантировать, что файловые объекты создаются с правильными разрешениями. См. CVE-2020-1736 для получения дополнительных сведений.

option

строка

Имя опции, необходимое для изменения значений или удаления опций.

owner

строка

Имя пользователя, который должен владеть файловым объектом, как и при использовании chown.

Если не указано, используется текущий пользователь, если вы не root, в этом случае сохраняется предыдущая собственность.

Указание числового имени пользователя будет интерпретироваться как идентификатор пользователя, а не как имя пользователя. Избегайте числовых имен пользователей, чтобы избежать этой путаницы.

selevel

строка

Часть уровня SELinux контекста файлового объекта.

Это атрибут MLS/MCS, иногда известный как range.

При установке значения _default, используется часть политики level, если она доступна.

serole

строка

Часть роли SELinux контекста файлового объекта.

При установке значения _default, используется часть политики role, если она доступна.

setype

строка

Часть типа SELinux контекста файлового объекта.

При установке значения _default, используется часть политики type, если она доступна.

seuser

строка

Часть пользователя SELinux контекста файлового объекта.

По умолчанию используется политика system, где это применимо.

При установке значения _default, используется часть политики user, если она доступна.

state

строка

Если установлено значение absent, опция или раздел будут удалены, если они присутствуют, вместо создания.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

unsafe_writes

булево

Влияние на использование атомной операции для предотвращения повреждения данных или несогласованного чтения из целевого файлового объекта.

По умолчанию этот модуль использует атомные операции для предотвращения повреждения данных или несогласованного чтения из целевых файловых объектов, но иногда системы настроены или просто неисправны таким образом, что это не позволяет. Одним из примеров является контейнер docker с подключенными файловыми объектами, которые не могут обновляться атомно изнутри контейнера и могут быть записаны только небезопасным способом.

Эта опция позволяет Ansible переключаться на небезопасные методы обновления файловых объектов при сбое атомных операций (однако она не заставляет Ansible выполнять небезопасные записи).

ВАЖНО! Небезопасные записи подвержены проблемам гонки и могут привести к повреждению данных.

Варианты:

  • false ← (по умолчанию)
  • true

value

string

Если option отсутствует для iface и state имеет значение present, будет добавлено соответствующее значение. Если option уже существует и не имеет значений pre-up, up, post-up или down, его значение будет обновлено. Значения параметров pre-up, up, post-up и down обновить нельзя; поддерживаются только добавление новых параметров, удаление существующих или очистка всего набора параметров.

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз изменения состояния без модификации целевого объекта.

diff_mode

Поддержка: нет

При работе в режиме сравнения (diff mode) вернет информацию о том, что было изменено (или, возможно, нуждается в изменении в check_mode).

Примечания

Примечание

  • Если параметр определен несколько раз, последнее значение будет обновлено, но все значения будут удалены в случае отсутствия состояния.

Примеры

- name: Set eth1 mtu configuration value to 8000
  community.general.interfaces_file:
    dest: /etc/network/interfaces.d/eth1.cfg
    iface: eth1
    option: mtu
    value: 8000
    backup: true
    state: present
  register: eth1_cfg

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:

Ключ

Описание

dest

строка

Файл/путь назначения.

Возвращаемое значение: успех

Пример: "/etc/network/interfaces"

ifaces

словарь

Словарь интерфейсов.

Возвращаемое значение: успех

ifaces

словарь

Словарь интерфейса.

Возвращаемое значение: успех

eth0

словарь

Имя интерфейса.

Возвращаемое значение: успех

address_family

строка

Семейство адресов интерфейса.

Возвращаемое значение: успех

Пример: "inet"

down

список / элементы=строка

Список скриптов down.

Возвращаемое значение: успех

Пример: ["route del -net 10.10.10.0/24 gw 10.10.10.1 dev eth1", "route del -net 10.10.11.0/24 gw 10.10.11.1 dev eth2"]

method

строка

Метод интерфейса.

Возвращаемое значение: успех

Пример: "manual"

mtu

строка

Другие параметры, все значения возвращаются как строки.

Возвращаемое значение: успех

Пример: "1500"

post-up

список / элементы=строка

Список скриптов post-up.

Возвращаемое значение: успех

Пример: ["route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1", "route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2"]

pre-up

список / элементы=строка

Список скриптов pre-up.

Возвращаемое значение: успех

Пример: ["route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1", "route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2"]

up

список / элементы=строка

Список скриптов up.

Возвращаемое значение: успех

Пример: ["route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1", "route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2"]

Авторы

  • Roman Belyakovsky (@hryamzik)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (источники)
  • Задать вопрос
  • Отправить отчет об ошибке
  • Запросить новую функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/interfaces_file_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API