interfaces_file – Настройки параметров в файлах /etc/network/interfaces
Новое в версии 2.4.
Краткое описание
- Управление (добавление, удаление, изменение) отдельных параметров интерфейса в файле в стиле interfaces, без необходимости управления файлом целиком с помощью, скажем, template или assemble. Интерфейс должен быть представлен в файле.
- Чтение информации об интерфейсах из файлов в стиле interfaces
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| address_family - добавлен в 2.8 | Семейство адресов интерфейса, полезно, если одно имя интерфейса используется для inet и inet6 | |
| attributes строка | Атрибуты, которые должны иметь результирующий файл или директория. Для получения поддерживаемых флагов см. руководство пользователя для chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и в выводе lsattr. Оператор = предполагается по умолчанию, в противном случае необходимо включить операторы + или -. псевдонимы: attr | |
| backup логическое значение |
| Создать резервную копию файла, включая информацию о времени создания, чтобы вы могли восстановить исходный файл, если случайно его повредили. |
| dest - | Значение по умолчанию: "/etc/network/interfaces" | Путь к файлу интерфейсов |
| group строка | Имя группы, которая должна владеть файлом/каталогом, как в команде chown. | |
| iface - | Имя интерфейса, необходимое для изменения значений или удаления параметров. | |
| mode строка | Права доступа, которые должны иметь результирующий файл или директория. Для тех, кто привык к /usr/bin/chmod, помните, что режимы — это на самом деле восьмеричные числа. Вы должны либо добавить ведущий ноль, чтобы парсер YAML Ansible понял, что это восьмеричное число (например, 0644 или 01777), либо заключить его в кавычки (например, '644' или '1777'), чтобы Ansible получил строку и мог выполнить собственное преобразование из строки в число.Передача Ansible числа без соблюдения этих правил приведет к десятичному числу, что даст неожиданные результаты. Начиная с Ansible 1.8, режим может быть указан в символической форме (например, u+rwx или u=rw,g=r,o=r). | |
| option - | Имя параметра, необходимое для изменения значений или удаления параметров. | |
| owner строка | Имя пользователя, который должен владеть файлом/каталогом, как в команде chown. | |
| selevel строка | Значение по умолчанию: "s0" | Часть уровня SELinux контекста файла. Это атрибут MLS/MCS, иногда известный как range. Если установлено значение _default, будет использована часть политики level, если она доступна. |
| serole строка | Часть роли SELinux контекста файла. Если установлено значение _default, будет использована часть политики role, если она доступна. | |
| setype строка | Часть типа SELinux контекста файла. Если установлено значение _default, будет использована часть политики type, если она доступна. | |
| seuser строка | Часть пользователя SELinux контекста файла. По умолчанию используется политика system, где это применимо.Если установлено значение _default, будет использована часть политики user, если она доступна. | |
| state - |
| Если установлено значение absent, параметр или раздел будут удалены, если они присутствуют, вместо создания. |
| unsafe_writes логическое значение |
| Влияние на использование атомарной операции для предотвращения повреждения данных или несогласованного чтения из целевого файла. По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения из целевых файлов, но иногда системы настроены или просто неисправны таким образом, что это невозможно. Один пример — файлы, смонтированные в Docker, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только неатомарным способом. Этот параметр позволяет Ansible перейти к небезопасным методам обновления файлов, когда атомарные операции завершаются неудачно (тем не менее, он не заставляет Ansible выполнять небезопасные записи). ВАЖНО! Небезопасные записи подвержены гонкам и могут привести к повреждению данных. |
| value - | Если параметр option не указан для interface и state имеет значение present, будет добавлен параметр. Если параметр option уже существует и не является pre-up, up, post-up или down, его значение будет обновлено. Параметры pre-up, up, post-up и down не могут быть обновлены, поддерживаются только добавление новых параметров, удаление существующих или очистка всего набора параметров. |
Примечания
Примечание
- Если параметр задан несколько раз, последняя запись будет обновлена, но все записи будут удалены в случае состояния отсутствия.
Примеры
# Set eth1 mtu configuration value to 8000
- interfaces_file:
dest: /etc/network/interfaces.d/eth1.cfg
iface: eth1
option: mtu
value: 8000
backup: yes
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'] | |||
Статус
- В этом модуле гарантированы изменения интерфейса, совместимые со старыми версиями. [stableinterface]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Роман Беляковский (@hryamzik)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/interfaces_file_module.html