Инструменты пользователя

Инструменты сайта


service:mdadm

mdadm

Создание софт-рейдов в линуксе, работает на уровне разделов, не дисков.

Создание массива

Создать разделы на дисках (файловую систему на них делать не нужно). Тип раздела для диска-члена массива - fd (Автоопределение Linux RAID).

Можно не создавать раздел на втором диске, а просто скопировать MBR с первого:

dd if=/dev/sdb of=mbr.img bs=512 count=1
dd if=mbr.img of=/dev/sdc

В случае с GPT:

sgdisk -R /dev/sdb /dev/sdc # скопировать GPT
sgdisk -G /dev/sdc # сгенерировать случайный GUID
# Установить mdadm
apt-get install mdadm
# Сделать зеркало
mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
# Посмотреть статус массива
watch cat /proc/mdstat
# После сборки массива нужно дописать информацию в конфиг mdadm:
echo "DEVICE partitions" >> /etc/mdadm/mdadm.conf
mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf
# Для уведомления по почте (нужен настроенный почтарь, Postfix в Ubuntu)
# дописать в конфиг почтовый адрес для уведомлений о состоянии RAID
MAILADDR mailbox@mail.com

Cоздать файловую систему на /dev/md0.

Создать папку для монтирования раздела, например /mnt/data.

Дать права на папку, чтобы не только root мог с ней работать.

Настроить автомонтирование раздела при загрузке системы:

# Узнать ID раздела:
blkid
# Прописать в /etc/fstab
UUID=скопированный-UUID /mnt/data ext4 defaults 0 0

Починка массива

Ситуация: в зеркале вышел из строя один диск.

Убунта может при загрузке выдать квадратики (как починить), где сказано, что каталог не может смонтироваться, и опции S (skip) и M (manual, однопользовательский режим). Выбрать S.

# Проверить состояние RAID
cat /proc/mdstat
# Более детальная информация
mdadm --detail /dev/md0
# Остановить массив
mdadm --stop /dev/md0
# Запустить массив в режиме degraded
mdadm --assemble --scan

После добавки нового диска и создания на нём раздела, добавить его к массиву:

mdadm /dev/md0 --add /dev/sdc1

Материалы

service/mdadm.txt · Последнее изменение: 30.07.2024 19:21 — 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki