Перейти к содержанию

mdadm

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

mdadm (ранее mdctl)
Тип Дисковая утилита
Разработчик Neil Brown
Операционная система Linux
Последняя версия 4.1 (2018-10-01)
Лицензия GNU GPL 2 и новее
Сайт neil.brown.name/blog/mda…

mdadm (от англ. multiple devices, ранее — mdctl) — утилита для управления программными RAID-массивами в Linux.

В Linux можно использовать следующие разновидности RAID:

  • Линейный (JBOD) — расширение размера логического диска за счет нескольких физических дисков;
  • RAID0 (striping) — распределение блоков на нескольких физических дисках для повышения скоростей записи и чтения, но без обеспечения отказоустойчивости;
  • RAID1 (mirroring) — зеркалирование, то есть запись одних и тех же данных одновременно на несколько дисков, что обеспечивает отказоустойчивость при выходе из строя любого количества дисков, пока остаётся хотя бы один работоспособный;
  • RAID4 — похож на RAID 0, но отличается от него тем, что данные разбиваются на блоки, а не на байты;
  • RAID5 — массив с обеспечением отказоустойчивости за счет минимальной избыточности (требуется минимум три диска, для отказоустойчивости — четыре диска);
  • RAID6 — похож на RAID 5, но имеет более высокую степень надежности — под контрольные суммы выделяется ёмкость 2-х дисков, рассчитываются 2 суммы по разным алгоритмам;
  • Multipath — программный массив, позволяющий создавать разные псевдо-дисковые устройства для одного физического диска;
  • Faulty — псевдо-RAID-массив.

Не все разновидности RAID-массивов доступны в ядре Linux в начальной конфигурации. Например, чтобы использовать RAID5 необходимо внести изменения в конфигурацию ядра и скомпилировать его заново. Для уже скомпилированных ядер из дистрибутивов, возможно потребуется явная загрузка соответствующего модуля. Пример: modprobe raid5.

Команды

С помощью mdadm можно выполнять следующие операции:

  • create — создание RAID-массива из нескольких дисков (с суперблоком на каждом устройстве).
  • assemble — сборка (ранее созданного) массива и его активация. Диски из которых собирается массив могут указываться явно или будет выполнен их автоматический поиск. mdadm проверяет, образуют ли компоненты корректный массив.
  • build — объединение дисков в массив (без суперблоков). Для таких массивов mdadm не различает создание и последующую сборку. Также невозможно проверить, были ли указаны необходимые устройства в верном порядке. Не используйте этот режим, если вы не знаете зачем это нужно.
  • manage — управление массивом: добавление новых свободных дисков (spares) и удаление неработоспособных (faulty devices).
  • follow, monitor — следить за одним или несколькими md-устройствами и реагировать на изменение их состояния. Это имеет смысл только для массивов уровней 1, 4, 5, 6 или multipath-массивов, так как только они могут иметь различные состояния. raid0 или linear не могут иметь недостающих, запасных или сбойных дисков, поэтому там не за чем следить.
  • grow — расширение или уменьшение размера (shrink) массива, либо иное его реформирование (reshape). На данный момент поддерживается изменение активного размера компонентов в RAID-массивах уровней 1/4/5/6, а также изменение количества активных устройств в RAID1.

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

Примечания

Ссылки