LINUX.ORG.RU
ФорумAdmin

Пытаюсь разобраться с RAID

 , , ,


0

1

Доброго времени суток. Сейчас пытаюсь разобраться с правильным созданием RAID в линуксе, информации куча (по степени устаревания разная), но никак не могу понять связь между версией ядра линукс, metadata version суперблока, проблемами загрузки (Grub и Grub2), необходимостью записывать конфу созданного массива в mdadm.conf, raid autodetect, initramfs. Подскажите пожалуйста (либо же укажите ссылки на внятные материалы) как правильно делать массивы. Например, если grub 1 и grub2, что нужно делать в обоих случаях. Какую версию метаданных указывать. Что нужно писать в mdadm.conf. Как и на какой версии ядра, загрузчика будет грузиться с массива, что для этого делать. Нужно ли менять тип раздела на fd и опять же с чем связано это применения

1) man md

2) man mdadm

3) любая мурзилка по GRUB2

4) PROFIT

Gotf ★★★ ()

Для конца 2014 года у тебя слишком много вопросов. Если у тебя в планах нет задач поддерживать системы более, чем пятилетней давности, то всякие версии ядра, груба и метаданных тебя волновать не должны. Если, к тому же, дистриб бинарный, то там уже побеспокоились о поддержке mdadm в iniramfs, так что создаёшь и используешь. man mdadm, man fstab. А задача поставить линукс на рейд в большинстве дистров давно уже вообще тривиальна — всё тыкается мышой в графическом установщике.

redgremlin ★★★★★ ()
Ответ на: комментарий от redgremlin

метаданных

Тут должны. С метаданными 0.9 RAID соберёт само ядро, а с 1.x в initrd должен попадать mdadm.

AS ★★★★★ ()
Ответ на: комментарий от AS

А это настраивается или только нужно указать версию метаданных при создании массива? Какая версия по умолчанию(без указания) в современных системах?

gmax007 ()
Ответ на: комментарий от gmax007

или только нужно указать версию метаданных при создании массива ?

При создании указывается. А что по-умолчанию - это от инсталятора зависит. Если указывается 1.x, можно надеяться, что initrd формируется с включением в него mdadm. Но стоит установить и посмотреть, что выйдет.

AS ★★★★★ ()
Ответ на: комментарий от AS

Сейчас на свежескачанном debiane на виртуалке посмотрел:

mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Sat Dec 20 21:34:08 2014
     Raid Level : raid0
     Array Size : 4191232 (4.00 GiB 4.29 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Sat Dec 20 21:34:08 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 512K

           Name : deb:0  (local to host deb)
           UUID : 6a4a4855:9ceb28ea:fae5e4b8:d12e4142
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1

Здесь массив без самой системы. Я так понял что вверху строка Version : 1.2 это и есть версия метаданных? Мне что нужно делать чтоб грузилось, если я захочу работающую систему, полностью зеркалировать, не разделом а, например, sda с системой сразу?

gmax007 ()
Ответ на: комментарий от gmax007

1.2 это и есть версия метаданных?

Да.

Мне что нужно делать чтоб грузилось

Выделить /boot на RAID1

не разделом а, например, sda с системой сразу ?

mdadm именно так не может, он работает только поверх разделов. Но есть два похожих варианта. Во-первых, на разделы можно разбить md0, во-вторых, на md0 можно сделать LVM.

AS ★★★★★ ()
Ответ на: комментарий от AS

Выделить /boot на RAID1

Тут не понял, что значит выделить, всмысле зазеркалировать его тоже как и все остальное? Вот допустим у меня sda1 - /boot sda2 - swap sda3 - / Если я тупо копирую partition table (там сколько в mbr - первые 512 на диске?) на sdb, а потом делаю: --create /md0 raid-1 /sda /sdb Так прокатит, или нужно каждый раздел делать типо: --create /md0 raid-1 /sda1 /sdb1 --create /md0 raid-1 /sda2 /sdb2 учитывая что на sdb разделы такого же размера?

gmax007 ()
Ответ на: комментарий от gmax007

Тут не понял, что значит выделить,

Загрузка возможна только с RAID1. Потому, если требуется какой-то другой тип RAID для основной системы, надо для /boot создать отдельный массив.

а потом делаю: --create /md0 raid-1 /sda /sdb Так прокатит

Нет

--create /md0 raid-1 /sda1 /sdb1

С учётом того, что данные на sda1 пропадут, да. Но это, действительно, неудобно, когда наступит момент с восстановлением.
И не md0, а md0, md1 и т.д. Ну набор параметров неправильный, конечно.

Потому лучше сделать один sda1 на весь диск, и из него сделать RAID1, а его уже побить на разделы, или использовать LVM. Либо, если нужен не RAID1, то ещё один маленький раздел для RAID1 для /boot.

AS ★★★★★ ()
Ответ на: комментарий от Gotf

Выделить /boot на RAID1
Нафига ?

А кто у тебя будет ядро грузить с раздела, где данные неполные ? Какой-нибудь Grub, который запихали в MBR, и который в себе пол-ОС тащит, чтобы только RAID собрать ?

AS ★★★★★ ()
Ответ на: комментарий от AS

А кто у тебя будет ядро грузить с раздела, где данные неполные ?

GRUB.

который в себе пол-ОС тащит

Слишком толсто.

Gotf ★★★ ()
Ответ на: комментарий от gmax007

собственно из-за чего

Если в общих чертах, то такой сетап может внезапно развалиться. И скорее развалится, чем нет.

Gotf ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.