Spec-Zone.ru › Ansible

Модуль community.general.parted — Настройка разделов блочных устройств

Примечание

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

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

Для установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования. Подробнее см. Требования.

Для использования в книге задач укажите: community.general.parted.

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

Описание

  • Этот модуль позволяет настраивать разделы блочных устройств с помощью инструмента командной строки parted. Полное описание полей и опций см. в руководстве GNU parted.

Требования

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

  • Этот модуль требует parted версии 1.8.3 и выше.
  • Опция align (за исключением undefined) требует parted версии 2.1 или выше.
  • Если версия parted ниже 3.1, требуется Linux-версия, на которой работает файловая система /sys/.
  • Требуется команда resizepart при использовании параметра resize.
END_OF_DOCUMENT_MARKER

Параметры

Параметр

Комментарии

align

string

Установить выравнивание для вновь созданных разделов. Используйте undefined для выравнивания по умолчанию parted.

Варианты:

  • "cylinder"
  • "minimal"
  • "none"
  • "optimal" ← (default)
  • "undefined"

device

string / required

Блочное устройство (диск), на котором нужно работать.

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

flags

list / elements=string

Список флагов, которые должны быть установлены на разделе.

fs_type

string

добавлено в community.general 0.2.0

Если указано, и раздел не существует, установит тип файловой системы для данного раздела.

Параметр необязателен, но см. примечания ниже об отрицательных значениях part_start.

label

string

Тип метки диска или таблица разделов для использования.

Если device уже содержит другую метку, она будет изменена на label, и все предыдущие разделы будут потеряны.

Необходимо указать name для таблицы разделов gpt.

Варианты:

  • "aix"
  • "amiga"
  • "bsd"
  • "dvh"
  • "gpt"
  • "loop"
  • "mac"
  • "msdos" ← (default)
  • "pc98"
  • "sun"

name

string

Устанавливает имя для номера раздела (только GPT, Mac, MIPS и PC98).

number

integer

Номер раздела, который затрагивается.

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

part_end

string

Где раздел будет заканчиваться как смещение от начала диска, то есть «расстояние» от начала диска. Отрицательные числа указывают расстояние от конца диска.

Расстояние может быть указано со всеми единицами, поддерживаемыми parted (кроме compat), и оно чувствительно к регистру, например 10GiB, 15%.

По умолчанию: "100%"

part_start

string

Где раздел будет начинаться как смещение от начала диска, то есть «расстояние» от начала диска. Отрицательные числа указывают расстояние от конца диска.

Расстояние может быть указано со всеми единицами, поддерживаемыми parted (кроме compat), и оно чувствительно к регистру, например 10GiB, 15%.

Использование отрицательных значений может потребовать установки fs_type (см. примечания).

По умолчанию: "0%"

part_type

string

Может быть указан только с label=msdos или label=dvh.

Ни part_type, ни name не могут использоваться с label=sun.

Варианты:

  • "extended"
  • "logical"
  • "primary" ← (default)

resize

boolean

добавлено в community.general 1.3.0

Вызов resizepart на существующих разделах для соответствия размеру, указанному part_end.

Варианты:

  • false ← (default)
  • true

state

string

Создать или удалить раздел.

Если установлено в info, модуль будет только возвращать информацию об устройстве.

Варианты:

  • "absent"
  • "present"
  • "info" ← (default)

unit

string

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

При получении информации о диске рекомендуется всегда указывать единицу измерения.

Варианты:

  • "s"
  • "B"
  • "KB"
  • "KiB" ← (default)
  • "MB"
  • "MiB"
  • "GB"
  • "GiB"
  • "TB"
  • "TiB"
  • "%"
  • "cyl"
  • "chs"
  • "compact"

Атрибуты

Атрибут

Поддержка

Описание

check_mode

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

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

diff_mode

Поддержка: отсутствует

Будет возвращать подробную информацию о том, что изменилось (или, возможно, должно измениться в check_mode), в режиме diff.

Примечания

Примечание

  • При получении информации о новом диске и когда версия parted, установленная в системе, предшествует версии 3.1, модуль запрашивает информацию о диске у ядра через /sys/. В этом случае единицы CHS и CYL не поддерживаются.
  • Отрицательные part_start начальные значения отклонялись, если fs_type не было указано. Эта ошибка была исправлена в parted 3.2.153. Если вы хотите использовать отрицательные part_start, укажите также fs_type или убедитесь, что ваша система содержит более новую версию parted.

Примеры

- name: Create a new ext4 primary partition
  community.general.parted:
    device: /dev/sdb
    number: 1
    state: present
    fs_type: ext4

- name: Remove partition number 1
  community.general.parted:
    device: /dev/sdb
    number: 1
    state: absent

- name: Create a new primary partition with a size of 1GiB
  community.general.parted:
    device: /dev/sdb
    number: 1
    state: present
    part_end: 1GiB

- name: Create a new primary partition for LVM
  community.general.parted:
    device: /dev/sdb
    number: 2
    flags: [ lvm ]
    state: present
    part_start: 1GiB

- name: Create a new primary partition with a size of 1GiB at disk's end
  community.general.parted:
    device: /dev/sdb
    number: 3
    state: present
    fs_type: ext3
    part_start: -1GiB

# Example on how to read info and reuse it in subsequent task
- name: Read device information (always use unit when probing)
  community.general.parted: device=/dev/sdb unit=MiB
  register: sdb_info

- name: Remove all partitions from disk
  community.general.parted:
    device: /dev/sdb
    number: '{{ item.num }}'
    state: absent
  loop: '{{ sdb_info.partitions }}'

- name: Extend an existing partition to fill all available space
  community.general.parted:
    device: /dev/sdb
    number: "{{ sdb_info.partitions | length }}"
    part_end: "100%"
    resize: true
    state: present

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

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

Ключ

Описание

partition_info

сложное

Текущая информация о разделах

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

Пример: {"disk": {"dev": "/dev/sdb", "logical_block": 512, "model": "VMware Virtual disk", "physical_block": 512, "size": 5.0, "table": "msdos", "unit": "gib"}, "partitions": [{"begin": 0.0, "end": 1.0, "flags": ["boot", "lvm"], "fstype": "", "name": "", "num": 1, "size": 1.0}, {"begin": 1.0, "end": 5.0, "flags": [], "fstype": "", "name": "", "num": 2, "size": 4.0}], "script": "unit KiB print "}

disk

словарь

Общая информация об устройстве.

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

partitions

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

Список разделов устройства.

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

script

строка

Сценарий parted, выполненный модулем

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

Авторы

  • Fabrizio Colonna (@ColOfAbRiX)

Ссылки на сборку

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

© 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/parted_module.html

Spec-Zone.ru

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