Сведения о документе

Установка на Linux на RAID

При установке дистрибутивов (как серверных, так и настольных) вы можете создать RAID-массив и установить дистрибутив на него. Такой массив позволит вам продолжить работу даже при выходе одного диска из строя.

Для создания RAID вам потребуются минимум два одинаковых жёстких диска. В этом руководстве мы покажем создание программного RAID 1 (зеркало) на двух жёстких дисках на примере дистрибутива Школьный Сервер. Создание RAID на других дистрибутивах аналогично.

Готовим Разделы для RAID

Making-raid1

На этапе подготовка диска выберите пункт «Подготовить разделы вручную» и нажмите кнопку «Далее».

Making-raid2

На следующем экране нам необходимо создать одинаковые разделы для RAID на обоих дисках. Для работы системы нам понадобиться два раздела на RAID: подкачка (swap) и корневая файловая система (/). Вы можете создать и другие разделы (например, для /var) способом, приведённым ниже. Примечание: если у вас на каждом диске есть один общий раздел, выберите диск и нажмите кнопку «Удалить».

Выберите первый жёсткий диск и нажмите кнопку «Создать раздел». Появится следующий диалог:

Making-raid3

Укажите размер раздела (для начала создадим swap размером 502 Мб) и тип раздела укажем «Linux RAID». Важно указать именно такой тип.

Making-raid4

Аналогичным образом создадим ещё три раздела на дисках. При этом разделы на разных дисках должны совпадать по размеру.

Создание разделов в массиве RAID

Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID». Если такой кнопки нет, то вы не создали разделы с типом «Linux RAID».

Making-raid5

В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK.

Making-raid6

Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda1 и sdb1. Нажмите на кнопку OK.

Making-raid7

Затем будет запрошен тип создаваемой файловой системы. Для swap выберите «Файловая система подкачки (swap) и нажмите на кнопку OK.

Making-raid8

У нас создан один раздел в массиве RAID (md0). Теперь аналогично создадим второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK.

Making-raid9

Так как у нас осталось два необъединённых раздела, просто нажмите на кнопку OK.

Making-raid10

Для корневой файловой системы выберите тип «Файловая система Ext2/3» и нажмите на кнопку OK.

Making-raid11

Для файловой системы Ext2/3 необходимо дополнительно указать точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию). Нажмите на кнопку OK.

Making-raid12

Поздравляем! Вы создали RAID! Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK.

Установка загрузчика

Making-raid13

Далее при установке будет ещё один момент, который необходимо учесть. Речь идёт про установку загрузчика операционной системы. Выберите «Раздел Linux (md1)» (это созданный нами на RAID раздел корневой файловой системы). После этого нажмите кнопку «Далее» и продолжайте установку как обычно.

После того, как операционная система будет установлена и загружена, можно посмотреть, в каком состоянии находится ваш RAID. Для этого войдите под пользователем и введите команду

cat /proc/mdstat

Действия при выходе одного жёсткого диска из строя

Если один жёсткий диск вышел из строя, то загрузите операционную систему (она будет работать и на одном диске), зайдите под пользователем root и проделайте следующее:

  1. Посмотрите, что сломалось:

    [root@localhost ~]# cat /proc/mdstat
    Personalities : [raid1]
    md1 : active raid1 sda2[0]
          4723008 blocks [2/1] [U_]
    
    md0 : active (auto-read-only) raid1 sda1[0]
          513984 blocks [2/1] [U_]

    Из вывода видно, что диск sdb недоступен: U_ показывает отсутствие второго раздела под RAID.

  2. Подключаем диск и копируем таблицу разделов с диска sda на диск sdb. Также перечитаем скопированную таблицу разделов для ядра:

    [root@localhost ~]# dd if=/dev/sda of=/dev/sdb bs=512 count=1
    1+0 records in
    1+0 records out
    512 bytes (512 B) copied, 0.00682677 s, 75.0 kB/s
    [root@localhost ~]# hdparm -z /dev/sdb
    
    /dev/sdb:
     re-reading partition table
  3. Добавляем разделы со второго диска к RAID-массиву:

    [root@localhost ~]# mdadm /dev/md0 -a /dev/sdb1
    mdadm: added /dev/sdb1
    [root@localhost ~]# mdadm /dev/md1 -a /dev/sdb2
    mdadm: added /dev/sdb2
  4. Смотрим, что получилось:

    [root@localhost ~]# cat /proc/mdstat
    Personalities : [raid1]
    md1 : active raid1 sdb2[2] sda2[0]
          4723008 blocks [2/1] [U_]
          [>....................]  recovery =  0.6% (32064/4723008) finish=9.7min speed=8016K/sec
    
    md0 : active raid1 sdb1[1] sda1[0]
          513984 blocks [2/2] [UU]
    
    unused devices: <none>

    Всё нормально: md0 уже засинхронизировался, md1 в процессе синхронизации.

  5. Через некоторое время (точнее — 10 минут, смотрите значение finish на этапе 4) смотрим ещё раз:

    [root@localhost ~]# cat /proc/mdstat
    Personalities : [raid1]
    md1 : active raid1 sdb2[1] sda2[0]
          4723008 blocks [2/2] [UU]
    
    md0 : active raid1 sdb1[1] sda1[0]
          513984 blocks [2/2] [UU]
    
    unused devices: <none>

    Теперь RAID полностью восстановлен.

  6. Обязательно восстанавливаем загрузчик:

    [root@localhost ~]# lilo
    Added ALTLinux *
    Added failsafe
    The Master boot record of  /dev/sda  has been updated.
    Warning: /dev/sdb is not on the first disk
    The Master boot record of  /dev/sdb  has been updated.
    One warning was issued.
Сведения о документе