Рубрики
HDD \ SSD \ ISO \ CD-ROM \ LVM \ FS \ RAID \ Диск

mdadm \ RAID

Подготовим диски:

 
ID = fd - Авто raid linux
fdisk -l - выводим информацию о дисках
fdisk /dev/sdb - "m" помощь. "p" показываем разметку. "n" создаем разметку. "t" id диска(для raid нужен fd). w - применить.
fdisk /dev/sdc - "m" помощь. "p" показываем разметку. "n" создаем разметку. "t" id диска(для raid нужен fd). w - применить.

Подготовим RAID1:

apt-get install mdadm (без отправки) (потом настроим если нужно)
mdadm --create --verbose /dev/md0 --level=1  raid-devices=2 /dev/sdb1 /dev/sdc1 - создание raid1
cat /proc/mdstat - статистки массива
watch cat /proc/mdstat - запускается каждые 2 сек команда cat /proc/mdstat
mdadm --detail --scan --verbose  - состояние raid массива

Включение raid при загрузке системы:

mdadm --detail --scan --verbose  - состояние raid массива (берем информацию)
mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf - вот так можно вытащить и записать в конфигурацию информацию о массиве mdadm
nano /etc/mdadm/mdadm.conf - файл настройки mdadm
---------------------------------------
ARRAY /dev/md0 level=raid1 num-devices=2 metdata1.2 name=server:0 UUID=1XXXXXXX8:XXXXXXXX:XXXXXXXX:12345678 - авто запуск raid массива
ADDRMAIL mail@host.me - отправка писем о райде
---------------------------------------
update-initramfs -u - обновить текущий ramdisk ( решение проблемы имени raim массива md127 )

Файловая система на массиве mdadm:

ID = 83 - Lunux
fdisk -l - выводим информацию о дисках
fdisk /dev/sdb - "m" помощь. "p" показываем разметку. "n" создаем разметку. "t" id диска(для raid нужен 83). w - применить.
mkfs.ext4 /dev/md0p1 - создадим файловую систему ext4 на /dev/md0p1
mkfs.ext4 /dev/md0 - создадим файловую систему ext4 на /dev/md0

Доп:

cat /proc/partitions - посмотреть партиции
mdadm -c /dev/md0 -L 5 -n 3 -x 1 /dev/sdb  /dev/sdc /dev/sdd /dev/sde - создание raid 5
echo mdadm -c /dev/md0 -L 5 -n 3 -x 1 /dev/sda[5-8] - проверим регулярку [5-8]
mdadm -c /dev/md0 -L 5 -n 3 -x 1 /dev/sda[5-8] - создаем рэйд массив из разделов
-c имя райд масива
-L уровень рэйда
-n кол-во  hdd
-x кол-во запасных дисков
hexdump -c -n 1024 /dev/md0 - посмотреть поверхность
hexdump -c /dev/vda |less - посмотреть поверхность
mdadm /dev/md0 -f /dev/sdy - отключить сбойный диск
mdadm /dev/md0 -r /dev/sdy - удалить сбойный диск
mdadm /dev/md0 -a /dev/sdy - добавить исправный диск

Отключение mdadm:

sudo mdadm --detail /dev/dm-1 
sudo mdadm --stop /dev/dm-1
sudo mdadm --zero-superblock /dev/sdc
sudo mdadm --zero-superblock /dev/sdd
sudo dd if=/dev/zero of=/dev/sdc
sudo dd if=/dev/zero of=/dev/sdd

предварительное восстановление работы raid1 в mdadm (вышел из строя один диск) для полного восстановления:

cat /proc/mdstat - покажет состояние рейд массивов
mdadm --stop /dev/md0 - остановим работу массива
mdadm --assemble --scan - произойдет перезапуск массива с живым диском
mount /dev/md0p1 /mnt/data - монтируем наш массив в папку /mnt/data ( можем копировать данные ) 

замена диска в raid массиве:

cat /proc/mdstat - покажет состояние рейд массивов
mdadm --detail /dev/md0 - детальная информация о raid
fdisk -l - показать установленные диски ( ищем новый диск )
fdisk /dev/sdf - выполняем разметку диска ("m" помощь. "p" паказываем разметку. "n" создаем разметку. "t" id диска(для raid нужен fd). w - применить.)
mdadm /dev/md0 --add /dev/sdf1 - добавляем мертвый диск
cat /proc/mdstat - смотрим состояние массивов

watch cat /proc/mdstat - вот так можем понаблюдать когда диски у нас синхранизируются