Стаття про створення raid-масиву на системах linux, клуб любителів asplinux

У статті описуються переваги програмного рішення по створенню бюджетного райд-масиву засобами
Лінукс і пояснюється, чому створювати райд масив засобами мікронода BIOS небезпечно і просто нерозумно.

Створення програмного RAID в Linux

Програмний RAID в Linux в бюджетному секторі рішень задач зберігання важливих даних є більш надійним, ніж модні нині SATA контролери, і дешевшим, ніж дорогі SCSI і ін. Апаратні RAID. Таким чином програмний Linux RAID є золотою серединою в рішенні по зберіганню даних в RAID і кращим за співвідношенням ціна / якість.

Linux RAID vs SATA RAID.

Тобто управління даними відбувається не на рівні самого «заліза», а на рівні микрокода BIOS через драйвер ОС. Від сюди і такі поняття, як «драйвера» на SATA-RAID (без яких RAID бачиться як окремі диски), від сюди і проблеми.

По-перше, це несумісність - згоріла материнська плата, і шукай таку ж плату цілком (чи не контролери), потрібна ідентична плата щоб добути свої цінні дані. Добре, якщо вони ще випускаються, а якщо це станеться років через 5-10? Linux RAID позбавлений цієї проблеми, тому що знаходиться на такому рівні абстракції, що ваш RAID буде «видно» на будь-який материнської плати і на будь-якому дистрибутиві Linux (в розумних рамках, природно).

Linux RAID vs SATA та ін. Апаратний RAID

Тут в плані швидкодії, звичайно ж, виграє апаратний RAID. Мінуси знову ж - якщо летить контролер, то потрібен саме такий же, на якому стояли жорсткі диски. Другий мінус для бюджетних рішень - висока ціна гарного апаратного RAID.

Отже, ми вибрали Linux Software RAID як рішення для зберігання даних. Тепер опишемо приклад створення RAID з «дзеркалюванням» (mirror) на програмному Linux RAID-е.

Крок 1. cfdisk / fdisk

Ми маємо 2 жорстких диска, які будуть у нас представляти RAID1 з дзеркалюванням даних. Створюємо на цих дисках розділи, наприклад, sdb1 і sdc1 однакового розміру під майбутній RAID.
Для цих цілей можна використовувати, наприклад, утиліти fdisk або cfdisk. Виставляємо типи цих партіцій як FD (Linux raid autodetection)

Крок 2. Створюємо RAID1

Створюємо RAID1 з цих розділів:

Крок 3. Деталі про створений RAID

Подивитися деталі про щойно створеному RAID можна командою:

Далі можна записати таку інформацію про RAID в файл / etc / raidtab:

Крок 4. Конфігурація mdadm

Конфігурувати mdadm для подальшої роботи можна так:

Тепер пошук і створення пристрою RAID (/ dev / md0) можна буде виробляти по командам:

Але як правило цього не потрібно, система сама знаходить і розпізнає програмний Linux RAID.

УВАГА! Переконайтеся що у вас в ядрі включена підтримка RAID (Multiple devices driver support (RAID and LVM))!

Усе. На цьому в принципі створення RAID завершено. Далі можна вже працювати з RAID і створювати партіціі на ньому. Нижче наведено приклад використання LVM2 на RAID, тому що Робота з LVM, на мій погляд, це найбільш гнучкий інструмент для роботи з партіціі, але про це в іншій статті. В принципі, тому що ми вже знаходимося на одному рівні абстракцій (програмний RAID), то з LVM можна і не зв'язуватися, але це на ваш смак.

Крок 5. LVM на RAID

Розбиття під LVM

Готуємо партіціі під LVM2 з RAID масиву. Для цього використовуємо утиліти з пакета lvm2:

Створюємо групу розділів і даємо їй ім'я наприклад vg (від volume group).

Створюємо логічні томи:

і так далі для opt. var тощо. (див. документацію до LVM)

Створюємо на наших логічних LVM-партіціі (група vg в / dev / vg /) файлові системи:

Усе. Тепер у вас / dev / vg / home вже LVM-те з файлової системою raiserfs знаходиться на RAID1 (дзеркало).

Якщо ви наприклад завантажилися з LiveCD і вам треба підключити ваш рейд, а система сама його не знайшла, це можна зробити як показано в прикладі нижче:

Дивлячись як зітруться. Якщо просто полетить сектор, то в завісімосі від рівня райд або мігрує, або буде братися з надлишкових джерел. Взагалі питання показує повне отсутсвтие поняття про принципи функціонування RAID різних рівнів.

хм. я так розумію вище зазначені дії який виробляли в уже встановленої системі - просто підключили ще 2 HDD і зробили з них RAID-1?
А ось як зробити RAID-1, при установці ОС і якщо всього 2 SATA диска (однакові)?

Rico, на скільки мені відомо так зробити не можна.
Альтернатива - зробити масив силами материнської плати (у випадку з платформою intel потрібен північний міст ICHxR), а вже на нього ставити вісь.

Rico писал (а):
хм. я так розумію вище зазначені дії який виробляли в уже встановленої системі - просто підключили ще 2 HDD і зробили з них RAID-1?
А ось як зробити RAID-1, при установці ОС і якщо всього 2 SATA диска (однакові)?

Ось дивно: як читаємо статтю?

Питання резонне і коректний: один пише кк створити, інший думає як йому зробити те, що йому потрібно.

За ідеєю / boot розділ, потрібно залишити на ext2 розміром 250Мб, так як це робиться при установці завантажувального диска на шифрованих LVM а 2 розділу (скажімо, sda5 і sdb5) інших на двох дисках зшити в райд з будь-якого Live-CD. Знову запустити інсталятор DEBIAN, він бачить райд відразу і виставити вручну розділи LVM і далі пройти установкудо записи GRUB. Міні-ядро в / boot буде містити при цьому все необхідне.

Складніше із завантаженням з райда з LVM на зашифрованому розділі, який день б'юся, а не зачепити.

А як же по іншому?
RAID-масив (першого рівня - дзеркало) захищає тільки від поломки диска, а від втрати даних. помилок драйвера файлової системи або від rm -rf / захистить тільки backup.

Ще до прочитання статті створив райд-1 створив ЛВМ все там розмістив і бут в тому числі, сумую все ок, єдине не створюйте свап в ЛВМ, працює як то некоректно.