Шпаргалка по работе с Mdadm

Модератор: padonki

Ответить
Аватара пользователя
Padonak
padonki
Сообщения: 3785
Зарегистрирован: 14 авг 2006, 20:43
Контактная информация:

Шпаргалка по работе с Mdadm

Сообщение Padonak »

Помечаем диск как сбойный:

Код: Выделить всё

mdadm /dev/md0 -f /dev/sde1
Удаляем диск из массива:

Код: Выделить всё

mdadm /dev/md0 --remove /dev/sde1
Добавляем новый диск:

Код: Выделить всё

mdadm /dev/md0 -a /dev/sde1
Удаляем его

Код: Выделить всё

mdadm --manage /dev/md0 --remove /dev/sdh1
Добавляем заново:

Код: Выделить всё

mdadm /dev/md0 -a /dev/sdh1
Добавить диск к массиву¶

В данном примере рассмотрим вариант добавления активного диска к RAID, который будет использоваться для работы, а не в качестве запасного.

Добавляем диск к массиву:

Код: Выделить всё

 mdadm /dev/md0 --add /dev/sde
Новый диск мы увидим в качестве spare:

4 8 16 - spare /dev/sde

Теперь расширяем RAID:

Код: Выделить всё

 mdadm -G /dev/md0 --raid-devices=3
в данном примере подразумевается, что у нас RAID 1 и мы добавили к нему 3-й диск.

Удаление массива¶

При удалении массива внимателнее смотрите на имена массива и дисков и подставляйте свои значения.

Если нам нужно полностью разобрать RAID, сначала размонтируем и остановим его:

Код: Выделить всё

 umount /mnt/data
где /mnt/data — каталог монтирования нашего RAID.

Код: Выделить всё

 mdadm -S /dev/md0
где /dev/md0 — массив, который мы хотим разобрать.
если мы получим ошибку mdadm: fail to stop array /dev/md0: Device or resource busy, с помощью
команды

Код: Выделить всё

lsof -f -- /dev/md0 
смотрим процессы, которые используют раздел и останавливаем их.

Затем очищаем суперблоки на всех дисках, из которых он был собран:

Код: Выделить всё

 mdadm --zero-superblock /dev/sda

mdadm --zero-superblock /dev/sdb

 mdadm --zero-superblock /dev/sdc
* где диски /dev/sda, /dev/sdb, /dev/sdc были частью массива md0.

А также удаляем метаданные и подпись:

Код: Выделить всё

 wipefs --all --force /dev/sd{a,b,c}
Запуск массива¶

Чтобы запустить все массивы, определенные в конфигурации или в /proc/mdstat, введите:

Код: Выделить всё

 mdadm --assemble --scan
Чтобы запустить конкретный массив, вы можете передать его в качестве аргумента в mdadm –assemble:

Код: Выделить всё

mdadm --assemble /dev/md0
Это сработает, если массив определен в конфигурации. Если же в файле конфигурации нет правильного определения массива, его все равно можно запустить, передав компонентные устройства:

Код: Выделить всё

mdadm --assemble /dev/md0 /dev/sda /dev/sdb /dev/sdc /dev/sdd
Собрав массив, его можно смонтировать как обычно:

Код: Выделить всё

 mount /dev/md0 /mnt/md0
Теперь массив доступен в точке монтирования.
Моя характеристика с детского сада: Хорошо кушает, спит, гуляет! Прошло много лет, ничего не изменилось.
Изображение
Ответить