Создание и установка на RAID: различия между версиями
Asy (обсуждение | вклад) Нет описания правки |
|||
(не показано 17 промежуточных версий 8 участников) | |||
Строка 1: | Строка 1: | ||
[[ | [[Категория:Руководства]] | ||
При установке дистрибутивов ALT Linux (как серверных, так и настольных) вы можете создать [http://ru.wikipedia.org/wiki/RAID RAID-массив] и установить дистрибутив на него. Такой массив позволит вам продолжить работу даже при выходе одного диска из строя. | При установке дистрибутивов ALT Linux (как серверных, так и настольных) вы можете создать [http://ru.wikipedia.org/wiki/RAID RAID-массив] и установить дистрибутив на него. Такой массив позволит вам продолжить работу даже при выходе одного диска из строя. | ||
Для создания RAID вам потребуются минимум два одинаковых жёстких диска. В этом руководстве мы покажем создание программного RAID 1 (зеркало) на двух жёстких дисках на примере дистрибутива Школьный Сервер. Создание RAID на других дистрибутивах аналогично. | Для создания RAID вам потребуются минимум два одинаковых жёстких диска. В этом руководстве мы покажем создание программного RAID 1 (зеркало) на двух жёстких дисках на примере дистрибутива Школьный Сервер. Создание RAID на других дистрибутивах аналогично. | ||
'''Примечание.''' | |||
Можно создать том RAID1 из одного диска с тем, чтобы в будущем добавить второй том в зеркало. Для этого просто указывайте один раздел для массива на шаге 2. Опция «Деградированный массив» не нужна. | |||
'''Примечание.''' | |||
При задействовании дисков с существующими метаданными уже не нужных RAID-массивов (программных, аппаратных и FakeRAID) обратите внимание на необходимость их предварительной [[Installer/problems/MD-RAID-cleanup|зачистки]] в текущих выпусках (вплоть до 8.1). | |||
== Варианты установок == | == Варианты установок == | ||
=== Установка на несколько RAID-томов === | |||
При установке создаётся несколько разделов | === Установка на несколько RAID-томов в режиме Legacy === | ||
При установке создаётся несколько разделов на каждом жёстком диске, соответствующие разделы (одинаковые на разных дисках) объединяются в отдельные тома mdX. | |||
==== Шаг 1. Готовим разделы для RAID ==== | ==== Шаг 1. Готовим разделы для RAID ==== | ||
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее»: | |||
[[Файл:Making-raid1.png]] | |||
На следующем экране нам необходимо создать одинаковые разделы для RAID на обоих дисках. В данном примере рассмотрено создание двух разделов на RAID: подкачка (swap) и корневая файловая система (/). Вы можете создать и другие разделы (например, для /var) способом, приведённым ниже. | |||
{{note|Если у вас на каждом диске есть один общий раздел, выберите диск и нажмите кнопку «Удалить»: | |||
[[Файл:Making-raid0.png]]}} | |||
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»: | |||
[[Файл:Making-raid2.png]] | |||
Появится следующий диалог: | |||
[[ | [[Файл:Making-raid3.png]] | ||
Укажите размер раздела (для начала создадим swap размером 2048 Мб) и тип раздела выбрать «'''Linux RAID'''». Важно указать именно такой тип. | |||
На оставшемся месте на диске создадим ещё один раздел: | |||
[[Файл:Making-raid3_1.png]] | |||
Аналогичным образом создадим такие же разделы на втором диске. При этом разделы на разных дисках должны совпадать по размеру. | |||
{{note|При создании разделов следует учесть, что объём результирующего массива может зависеть от размера, включённых в него разделов жёсткого диска. Например, при создании RAID 1, результирующий размер массива будет равен размеру минимального участника.}} | |||
==== Шаг 2. Создание массивов RAID ==== | |||
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID». Если такой кнопки нет, это означает, что вы ещё не создали разделы с типом «Linux RAID»: | |||
[[ | [[Файл:Making-raid4.png]] | ||
В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK: | |||
[[ | [[Файл:Making-raid5.png]] | ||
Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda1 и sdb1. Нажмите на кнопку OK: | |||
[[Файл:Making-raid6.png]] | |||
У нас создан один раздел в массиве RAID (md0). Теперь аналогично создадим второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK. | У нас создан один раздел в массиве RAID (md0). Теперь аналогично создадим второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK. | ||
[[ | [[Файл:Making-raid6_1.png]] | ||
В диалоге указания разделов жёстких дисков для RAID-раздела оставьте отмеченными разделы sda2 и sdb2 и нажмите на кнопку OK. | |||
[[ | [[Файл:Making-raid9.png]] | ||
После создания RAID-массивов их можно использовать как обычные разделы на жёстких дисках, то есть, на них можно создавать файловые системы. | |||
Для создания swap выберите пункт «md0» и нажмите кнопку «Создать том»: | |||
[[Файл:Making-raid10_1.png]] | |||
[[ | Будет запрошен тип создаваемой файловой системы. Для swap выберите «Файловая система подкачки (swap)» и нажмите на кнопку OK: | ||
[[Файл:Making-raid7.png]] | |||
В следующем окне нажмите на кнопку OK: | |||
[[Файл:Making-raid10_2.png]] | |||
Для создания корневой файловой системы выберите пункт «md1» и нажмите кнопку «Создать том»: | |||
[[Файл:Making-raid10_3.png]] | |||
Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и нажмите на кнопку OK: | |||
[[Файл:Making-raid10.png]] | |||
В следующем окне нажмите на кнопку OK: | |||
[[Файл:Making-raid11_1.png]] | |||
Для файловой системы Ext2/3/4 необходимо дополнительно указать точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию). Нажмите на кнопку OK: | |||
[[Файл:Making-raid11.png]] | |||
[[Файл:Making-raid12_1.png]] | |||
Поздравляем! Вы создали RAID! Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK. | Поздравляем! Вы создали RAID! Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK. | ||
Строка 68: | Строка 104: | ||
==== Шаг 3. Установка загрузчика ==== | ==== Шаг 3. Установка загрузчика ==== | ||
[[ | [[Файл:Making-raid13.png]] | ||
Далее при установке будет ещё один момент, который необходимо учесть. Речь идёт про установку загрузчика операционной системы. Выберите «Раздел Linux (md1)» (это созданный нами на RAID раздел корневой файловой системы). После этого нажмите кнопку «Далее» и продолжайте установку как обычно. | Далее при установке будет ещё один момент, который необходимо учесть. Речь идёт про установку загрузчика операционной системы. Выберите «Раздел Linux (md1)» (это созданный нами на RAID раздел корневой файловой системы). После этого нажмите кнопку «Далее» и продолжайте установку как обычно. | ||
=== Установка на несколько RAID-томов в режиме UEFI === | |||
При установке создаётся несколько разделов на каждом жёстком диске, соответствующие разделы (одинаковые на разных дисках) объединяются в отдельные тома mdX. | |||
Главное отличие от установки в режиме Legacy — необходимость отдельного раздела под загрузчик. | |||
==== Вариант 1 ==== | |||
Создание на одном из дисков отдельного {{path|/boot/efi}} | |||
===== Шаг 1. Готовим разделы для RAID ===== | |||
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее». | |||
На следующем экране нам необходимо создать одинаковые разделы на обоих дисках. В данном примере рассмотрено создание двух разделов: раздел ESP (/boot/efi) и корневая файловая система (/). Вы можете создать и другие разделы (например, для /var) способом, приведённым ниже. | |||
{{note|Если у вас на каждом диске есть один общий раздел, выберите диск и нажмите кнопку «Удалить».}} | |||
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»: | |||
[[Файл:Making-raid2-uefi.png|800px]] | |||
Необходимо создать FAT32-раздел с GPT-типом ESP (efi system partition): укажите размер ~100—500 Мб, выберите тип раздела «'''efi system partition'''»: | |||
[[Файл:Making-raid3-uefi.png|800px]] | |||
В следующем окне выберите тип «Файловая система FAT32»: | |||
[[Файл:Making-raid4-uefi.png|800px]] | |||
Затем укажите точку монтирования /boot/efi: | |||
[[Файл:Making-raid5-uefi.png|800px]] | |||
На оставшемся месте на диске создадим ещё один раздел: тип раздела выбрать «basic data» и не создавать на нем том (снять отметку с пункта «Создать том»): | |||
[[Файл:Making-raid6-uefi.png|800px]] | |||
На втором диске создать два раздела с типом «basic data» без создания на них томов. При этом разделы на разных дисках должны совпадать по размеру. | |||
===== Шаг 2. Создание массивов RAID ===== | |||
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID»: | |||
[[Файл:Making-raid7-uefi.png|800px]] | |||
В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK. | |||
Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda2 и sdb2. Нажмите на кнопку OK: | |||
[[Файл:Making-raid8-uefi.png|800px]] | |||
У нас создан один раздел в массиве RAID (md0). | |||
Для создания корневой файловой системы выберите пункт «md0» и нажмите кнопку «Создать том»: | |||
[[Файл:Making-raid9-uefi.png|800px]] | |||
Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и нажмите на кнопку OK: | |||
[[Файл:Making-raid10-uefi.png|800px]] | |||
В следующем окне нажмите на кнопку OK. И затем укажите точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию): | |||
[[Файл:Making-raid11-uefi.png|800px]] | |||
Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK. | |||
[[Файл:Making-raid12-uefi.png|800px]] | |||
===== Шаг 3. Установка загрузчика ===== | |||
На этапе установки загрузчика выберите «EFI (рекомендуемый)»: | |||
[[Файл:Making-raid13-uefi.png|800px]] | |||
После этого нажмите кнопку «Далее» и продолжайте установку как обычно. | |||
===== Шаг 5. Настройка загрузчика EFI ===== | |||
Чтобы система загрузилась при поломке одного из дисков, необходимо установить загрузчик на каждый диск массива. | |||
Ниже рассмотрены два способа: копирование загрузчика на второй раздел и установка загрузчика на RAID. | |||
====== Копирование на второй раздел ====== | |||
Содержимое файла {{path|/etc/fstab}} после установки системы: | |||
<syntaxhighlight lang="ini"> | |||
proc /proc proc nosuid,noexec,gid=proc 0 0 | |||
devpts /dev/pts devpts nosuid,noexec,gid=tty,mode=620 0 0 | |||
#tmpfs /tmp tmpfs nosuid 0 0 | |||
UUID=906da571-bb43-4615-9aad-07029cb9284b / ext4 relatime 1 1 | |||
UUID=F5FB-90BD /boot/efi vfat umask=0,quiet,showexec,iocharset=utf8,codepage=866 1 2</syntaxhighlight> | |||
Изменить идентификатор у раздела на втором диске и установить туда загрузчик: | |||
# Список идентификаторов разделов: | |||
#:<syntaxhighlight lang="bash"># lsblk -o +uuid | |||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS UUID | |||
sda 8:0 0 28G 0 disk | |||
├─sda1 8:1 0 255M 0 part /boot/efi F5FB-90BD | |||
└─sda2 8:2 0 27,7G 0 part 3f2e043d-2955-0d2b-6fb8-d17ceb836961 | |||
└─md127 9:127 0 27,7G 0 raid1 / 906da571-bb43-4615-9aad-07029cb9284b | |||
sdb 8:16 0 28G 0 disk | |||
├─sdb1 8:17 0 255M 0 part | |||
└─sdb2 8:18 0 27,7G 0 part 3f2e043d-2955-0d2b-6fb8-d17ceb836961 | |||
└─md127 9:127 0 27,7G 0 raid1 / 906da571-bb43-4615-9aad-07029cb9284b | |||
sr0 11:0 1 1024M 0 rom</syntaxhighlight> | |||
#Установить для раздела {{path|/dev/sdb1}} идентификатор равным UUID раздела на первом диске: | |||
#:<syntaxhighlight lang="bash"># mkdosfs -i F5FB90BD /dev/sdb1 | |||
mkfs.fat 4.2 (2021-01-31</syntaxhighlight> | |||
#:Где F5FB90BD — идентификатор первого EFI-раздела ({{path|/dev/sda1}}). | |||
# Получить список текущих загрузочных записей EFI: | |||
#:<syntaxhighlight lang="bash"># efibootmgr -v | |||
BootCurrent: 0005 | |||
Timeout: 0 seconds | |||
BootOrder: 0005,0000,0001,0002,0003,0004 | |||
Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331) | |||
Boot0001* UEFI VBOX CD-ROM VB2-01700376 PciRoot(0x0)/Pci(0x1,0x1)/Ata(1,0,0)N.....YM....R,Y. | |||
Boot0002* UEFI VBOX HARDDISK VB2e56c5b4-4d1c7757 PciRoot(0x0)/Pci(0xd,0x0)/Sata(0,65535,0)N.....YM....R,Y. | |||
Boot0003* UEFI VBOX HARDDISK VB1a49e6be-6020bf6e PciRoot(0x0)/Pci(0xd,0x0)/Sata(1,65535,0)N.....YM....R,Y. | |||
Boot0004 EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1) | |||
Boot0005* altlinux HD(1,GPT,c365f585-611c-6243-9cdd-7a7d1a1628f8,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi)</syntaxhighlight> | |||
#: Запись под номером 5 (altlinux) отвечает за загрузку системы и указывает на первый жесткий диск. Путь к EFI-образу для загрузки системы: {{path|\EFI\altlinux\shimx64.efi}}. | |||
# Создать аналогичную запись для второго диска: | |||
#:<syntaxhighlight lang="bash"># efibootmgr -c -d /dev/sdb -p 1 -L "altlinux2" -l "\EFI\altlinux\shimx64.efi"</syntaxhighlight> | |||
#:Где: | |||
#:*-c — создать новую запись; | |||
#:*-d — диск, на котором находится системный раздел EFI; | |||
#:*-p — номер раздела EFI | |||
#:*-L — метка для загрузочной записи | |||
#:*-l — путь образа EFI для загрузки | |||
# Проверить список загрузочных записей EFI: | |||
#:<syntaxhighlight lang="bash"># efibootmgr -v | |||
BootCurrent: 0005 | |||
Timeout: 0 seconds | |||
BootOrder: 0006,0005,0000,0001,0002,0003,0004 | |||
Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331) | |||
Boot0001* UEFI VBOX CD-ROM VB2-01700376 PciRoot(0x0)/Pci(0x1,0x1)/Ata(1,0,0)N.....YM....R,Y. | |||
Boot0002* UEFI VBOX HARDDISK VB2e56c5b4-4d1c7757 PciRoot(0x0)/Pci(0xd,0x0)/Sata(0,65535,0)N.....YM....R,Y. | |||
Boot0003* UEFI VBOX HARDDISK VB1a49e6be-6020bf6e PciRoot(0x0)/Pci(0xd,0x0)/Sata(1,65535,0)N.....YM....R,Y. | |||
Boot0004 EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1) | |||
Boot0005* altlinux HD(1,GPT,c365f585-611c-6243-9cdd-7a7d1a1628f8,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi) | |||
Boot0006* altlinux2 HD(1,GPT,78e85697-9793-634b-86d6-a1e87c15af8b,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi)</syntaxhighlight> | |||
# Скопировать содержимое загрузочного раздела с первого диска на второй: | |||
#:<syntaxhighlight lang="bash"># mount /dev/sdb1 /mnt | |||
# cp -R /boot/efi/EFI/ /mnt | |||
# umount /dev/sdb1</syntaxhighlight> | |||
# Теперь система может быть загружена с любого диска. | |||
{{Note|Команда удаления EFI-записи: | |||
<syntaxhighlight lang="bash"># efibootmgr -b <номер записи> -B</syntaxhighlight> | |||
Например: | |||
<syntaxhighlight lang="bash"># efibootmgr -b 6 -B</syntaxhighlight> | |||
}} | |||
====== Установка загрузчика на RAID ====== | |||
Объединить разделы sda1 и sdb1 в RAID и установить на него загрузчик: | |||
# Скопировать данные с загрузочного раздела ({{path|/boot/efi}}) на основной раздел, чтобы после создания рейда можно было их скопировать обратно: | |||
#:<syntaxhighlight lang="bash"># mkdir /boot/test | |||
# cp -a /boot/efi/* /boot/test/</syntaxhighlight> | |||
# Отмонтировать {{path|/boot/efi}}: | |||
#:<syntaxhighlight lang="bash"># umount /boot/efi</syntaxhighlight> | |||
# Объединить в рейд (md128) два раздела (sda1 и sdb1): | |||
#:<syntaxhighlight lang="bash"># mdadm --create --verbose /dev/md128 --level=1 --raid-devices=2 --metadata=1.0 /dev/sda1 /dev/sdb1</syntaxhighlight> | |||
#:Измените {{path|/dev/md128}} на что-то другое, если {{path|/dev/md128}} уже является активным устройством MD. | |||
# Создать файловую систему на RAID: | |||
#:<syntaxhighlight lang="bash"># mkfs.vfat /dev/md128</syntaxhighlight> | |||
# Вывести UUID раздела: | |||
#:<syntaxhighlight lang="bash"># lsblk -o +uuid | |||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS UUID | |||
sda 8:0 0 28G 0 disk | |||
├─sda1 8:1 0 255M 0 part ab242873-219e-2808-bf97-d17ece5893ca | |||
│ └─md128 9:128 0 254,9M 0 raid1 0BFA-B87A | |||
└─sda2 8:2 0 27,7G 0 part 6cf6a36a-55c4-e76f-6870-e615cc1bf25b | |||
└─md127 9:127 0 27,7G 0 raid1 / c6e98049-6aa8-44fb-9528-16f1cda381ed | |||
sdb 8:16 0 28G 0 disk | |||
├─sdb1 8:17 0 255M 0 part ab242873-219e-2808-bf97-d17ece5893ca | |||
│ └─md128 9:128 0 254,9M 0 raid1 0BFA-B87A | |||
└─sdb2 8:18 0 27,7G 0 part 6cf6a36a-55c4-e76f-6870-e615cc1bf25b | |||
└─md127 9:127 0 27,7G 0 raid1 / c6e98049-6aa8-44fb-9528-16f1cda381ed | |||
sr0 11:0 1 1024M 0 rom</syntaxhighlight> | |||
# В {{path|/etc/fstab}} изменить UUID у записи /boot/efi на новый (в данном примере 0BFA-B87A): | |||
#:<syntaxhighlight lang="ini">proc /proc proc nosuid,noexec,gid=proc 0 0 | |||
devpts /dev/pts devpts nosuid,noexec,gid=tty,mode=620 0 0 | |||
#tmpfs /tmp tmpfs nosuid 0 0 | |||
UUID=c6e98049-6aa8-44fb-9528-16f1cda381ed / ext4 relatime 1 1 | |||
UUID=0BFA-B87A /boot/efi vfat umask=0,quiet,showexec,iocharset=utf8,codepage=866 1 2</syntaxhighlight> | |||
# Смонтировать {{path|/boot/efi}}: | |||
#:<syntaxhighlight lang="bash"># mount /boot/efi</syntaxhighlight> | |||
# Скопировать данные из резервной копии в {{path|/boot/efi}}: | |||
#:<syntaxhighlight lang="bash"># cp -a /boot/test/* /boot/efi/</syntaxhighlight> | |||
# Перезагрузить систему. | |||
==== Вариант 2 ==== | |||
Создание на каждом диске раздела с типом ESP, и объединение их в RAID1. | |||
===== Шаг 1. Готовим разделы для RAID ===== | |||
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее». | |||
На следующем экране нам необходимо создать одинаковые разделы на обоих дисках. В данном примере рассмотрено создание двух разделов: раздел ESP (/boot/efi) и корневая файловая система (/). | |||
{{note|Если у вас на каждом диске есть один общий раздел, выберите диск и нажмите кнопку «Удалить».}} | |||
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»: | |||
[[Файл:Making-raid2-uefi.png|800px]] | |||
Создать раздел с GPT-типом ESP (efi system partition): укажите размер ~100—500 Мб, тип раздела выберите «'''efi system partition'''» и снимите отметку с пункта «Создать том»: | |||
[[Файл:Making-raid3_1-uefi.png|800px]] | |||
На оставшемся месте на диске создать ещё один раздел: тип раздела выбрать «basic data» и не создавать на нём том (снять отметку с пункта «Создать том»): | |||
[[Файл:Making-raid6_1-uefi.png|800px]] | |||
На втором диске создать такие же разделы. | |||
===== Шаг 2. Создание массивов RAID ===== | |||
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID». В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK. | |||
Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda1 и sdb1. Снимите отметку с пункта «Суперблок версии 1». Нажмите на кнопку OK: | |||
[[Файл:Making-raid7_1-uefi.png|800px]] | |||
Создать второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK. | |||
В диалоге указания разделов жёстких дисков для RAID-раздела оставьте отмеченными разделы sda2 и sdb2 и нажмите на кнопку OK. | |||
Для создания раздела для загрузчика выберите пункт «md0» и нажмите кнопку «Создать том». | |||
Будет запрошен тип создаваемой файловой системы. Для загрузчика выберите «Файловая система FAT32»: | |||
[[Файл:Making-raid10_1-uefi.png|800px]] | |||
И затем укажите точку монтирования {{path|/boot/efi}}: | |||
[[Файл:Making-raid11_1-uefi.png|800px]] | |||
Для создания корневой файловой системы выберите пункт «md1» и нажмите кнопку «Создать том». Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и затем укажите точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию) | |||
Для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK. | |||
[[Файл:Making-raid12_1-uefi.png|800px]] | |||
===== Шаг 3. Установка загрузчика ===== | |||
На этапе установки загрузчика выберите «EFI (для съёмных устройств)»: | |||
[[Файл:Making-raid13_1-uefi.png|800px]] | |||
После этого нажмите кнопку «Далее» и продолжайте установку как обычно. | |||
=== Установка на разделы одного тома RAID (не поддерживается) === | === Установка на разделы одного тома RAID (не поддерживается) === | ||
При желании иметь отдельные разделы для /, /home, /var | При желании иметь отдельные разделы для /, /home, /var и т. д. создавать несколько томов может оказаться неудобно. В Linux возможно создать один большой том md0 и разбить его на разделы, как обычный hdd. Такой вариант, к сожалению, установщиком в ALT не поддерживается в настоящее время ({{altbug|11572}}). Как замену, можно использовать установку на RAID+LVM. | ||
=== Установка на RAID+LVM === | === Установка на RAID+LVM === | ||
[http://lists.altlinux.org/pipermail/community/2013-May/679355.html | [http://lists.altlinux.org/pipermail/community/2013-May/679355.html Цитата из сообщения в рассылке community]: | ||
''Как можно установить LVM поверх md? Я в инсталляторе создаю md, но нет возможности указать это md0 для создания группы томов.'' | |||
# Создаёте разделы типа Linux RAID (и не забудьте /boot вынести на отдельный обычный или RAID-раздел, с LVM не грузилось). | |||
отдельный обычный или RAID-раздел | # В разделе RAID создаёте RAID из этих разделов. | ||
# В разделе LVM создаёте группу томов. Эта группа будет сделана на основе RAID-раздела (я проверял на единственном созданном, без разделов типа Linux LVM). | |||
# В группе томов LVM создаёте раздел(ы), присваиваете точки монтирования. | |||
основе RAID-раздела (я проверял на единственном созданном, без | # Дальше устанавливаете как обычно. | ||
разделов типа Linux LVM. | |||
== После установки == | == После установки == | ||
После того, как операционная система будет установлена и загружена, можно посмотреть, в каком состоянии находится ваш RAID. Для этого войдите под пользователем и введите команду | После того, как операционная система будет установлена и загружена, можно посмотреть, в каком состоянии находится ваш RAID. Для этого войдите под пользователем и введите команду: | ||
< | <syntaxhighlight lang="bash">$ cat /proc/mdstat</syntaxhighlight> | ||
== Действия при выходе одного жёсткого диска из строя == | == Действия при выходе одного жёсткого диска из строя == | ||
Строка 104: | Строка 381: | ||
Если один жёсткий диск вышел из строя, то загрузите операционную систему (она будет работать и на одном диске), зайдите под пользователем '''root''' и проделайте следующее: | Если один жёсткий диск вышел из строя, то загрузите операционную систему (она будет работать и на одном диске), зайдите под пользователем '''root''' и проделайте следующее: | ||
# Посмотрите, что сломалось: | |||
< | #: <syntaxhighlight lang="bash"># cat /proc/mdstat | ||
Personalities : [raid1] | Personalities : [raid1] | ||
md1 : active raid1 sda2[0] | md1 : active raid1 sda2[0] | ||
Строка 111: | Строка 388: | ||
md0 : active (auto-read-only) raid1 sda1[0] | md0 : active (auto-read-only) raid1 sda1[0] | ||
513984 blocks [2/1] [U_]</pre> | 513984 blocks [2/1] [U_]</pre></syntaxhighlight> | ||
Из вывода видно, что диск sdb недоступен: U_ показывает отсутствие второго раздела под RAID. | #:Из вывода видно, что диск sdb недоступен: U_ показывает отсутствие второго раздела под RAID. | ||
# Подключаем диск и копируем таблицу разделов с диска sda на диск sdb. Также перечитаем скопированную таблицу разделов для ядра. Пример для таблицы разделов MBR: | |||
#: <syntaxhighlight lang="bash"># dd if=/dev/sda of=/dev/sdb bs=512 count=1 | |||
< | |||
1+0 records in | 1+0 records in | ||
1+0 records out | 1+0 records out | ||
512 bytes (512 B) copied, 0.00682677 s, 75.0 kB/s | 512 bytes (512 B) copied, 0.00682677 s, 75.0 kB/s | ||
# hdparm -z /dev/sdb | |||
/dev/sdb: | /dev/sdb: | ||
re-reading partition table</ | re-reading partition table</syntaxhighlight> | ||
#:Вместо {{cmd|hdparm}} можно использовать команду {{cmd|partprobe}} без параметров. | |||
#:В случае GPT нужно копировать 2048 байт в начале диска (bs=2048), следом нужно запустить parted и подтвердить "починку" второй копии GPT, и уже тогда перечитывать ядром таблицу томов: | |||
#: <syntaxhighlight lang="bash"># dd if=/dev/sda of=/dev/sdb bs=2048 count=1 | |||
1+0 записей получено | |||
1+0 записей отправлено | |||
2048 байт (2,0 kB, 2,0 KiB) скопирован, 0,00740497 s, 277 kB/s | |||
# parted /dev/sdb | |||
GNU Parted 3.2.46-e4ae | |||
Используется /dev/sdb | |||
Добро пожаловать в GNU Parted! Наберите 'help' для просмотра списка команд. | |||
(parted) p | |||
Ошибка: Резервная таблица GPT повреждена, но главная кажется корректной, поэтому она и будет использоваться. | |||
OK/Отменить/Cancel? OK | |||
Модель: ATA VBOX HARDDISK (scsi) | |||
Диск /dev/sdb: 30,1GB | |||
Размер сектора (логич./физич.): 512B/512B | |||
Таблица разделов: gpt | |||
Флаги диска: | |||
Номер Начало Конец Размер Файловая система Имя Флаги | |||
1 1049kB 268MB 267MB загрузочный, esp | |||
2 268MB 30,1GB 29,8GB msftdata | |||
(parted) q | |||
# hdparm -z /dev/sdb | |||
/dev/sdb: | |||
< | re-reading partition table</syntaxhighlight> | ||
# Добавляем разделы со второго диска к RAID-массиву: | |||
#:<syntaxhighlight lang="bash"># mdadm /dev/md0 -a /dev/sdb1 | |||
mdadm: added /dev/sdb1 | mdadm: added /dev/sdb1 | ||
# mdadm /dev/md1 -a /dev/sdb2 | |||
mdadm: added /dev/sdb2</ | mdadm: added /dev/sdb2</syntaxhighlight> | ||
# Смотрим, что получилось: | |||
#:<syntaxhighlight lang="bash"># cat /proc/mdstat | |||
< | |||
Personalities : [raid1] | Personalities : [raid1] | ||
md1 : active raid1 sdb2[2] sda2[0] | md1 : active raid1 sdb2[2] sda2[0] | ||
Строка 140: | Строка 445: | ||
513984 blocks [2/2] [UU] | 513984 blocks [2/2] [UU] | ||
unused devices: <none></ | unused devices: <none></syntaxhighlight> | ||
Всё нормально: md0 уже засинхронизировался, md1 в процессе синхронизации. | #:Всё нормально: md0 уже засинхронизировался, md1 в процессе синхронизации. | ||
# Через некоторое время (точнее — 10 минут, смотрите значение '''finish''' на этапе 4) смотрим ещё раз: | |||
#:<syntaxhighlight lang="bash"># cat /proc/mdstat | |||
< | |||
Personalities : [raid1] | Personalities : [raid1] | ||
md1 : active raid1 sdb2[1] sda2[0] | md1 : active raid1 sdb2[1] sda2[0] | ||
Строка 152: | Строка 456: | ||
513984 blocks [2/2] [UU] | 513984 blocks [2/2] [UU] | ||
unused devices: <none></ | unused devices: <none></syntaxhighlight> | ||
Теперь RAID полностью восстановлен. | #:Теперь RAID полностью восстановлен. | ||
# Обязательно восстанавливаем загрузчик, для lilo: | |||
#:<syntaxhighlight lang="bash"># lilo | |||
< | |||
Added ALTLinux * | Added ALTLinux * | ||
Added failsafe | Added failsafe | ||
Строка 162: | Строка 465: | ||
Warning: /dev/sdb is not on the first disk | Warning: /dev/sdb is not on the first disk | ||
The Master boot record of /dev/sdb has been updated. | The Master boot record of /dev/sdb has been updated. | ||
One warning was issued.</ | One warning was issued.</syntaxhighlight> | ||
#:или для grub2: | |||
#:<syntaxhighlight lang="bash"># grub-autoupdate | |||
Updating grub on /dev/sdb | |||
Installation finished. No error reported. | |||
Updating grub on /dev/sda | |||
Installation finished. No error reported.</syntaxhighlight> | |||
#:и или для grub2: | |||
#:<syntaxhighlight lang="bash"># grub-install /dev/sda | |||
Установка завершена. Ошибок нет. | |||
# grub-install /dev/sdb | |||
Установка завершена. Ошибок нет. | |||
# update-grub</syntaxhighlight> | |||
[[Категория:RAID]] | |||
{{Category navigation|title=RAID|category=RAID|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 14:12, 13 ноября 2023
При установке дистрибутивов ALT Linux (как серверных, так и настольных) вы можете создать RAID-массив и установить дистрибутив на него. Такой массив позволит вам продолжить работу даже при выходе одного диска из строя.
Для создания RAID вам потребуются минимум два одинаковых жёстких диска. В этом руководстве мы покажем создание программного RAID 1 (зеркало) на двух жёстких дисках на примере дистрибутива Школьный Сервер. Создание RAID на других дистрибутивах аналогично.
Примечание. Можно создать том RAID1 из одного диска с тем, чтобы в будущем добавить второй том в зеркало. Для этого просто указывайте один раздел для массива на шаге 2. Опция «Деградированный массив» не нужна.
Примечание. При задействовании дисков с существующими метаданными уже не нужных RAID-массивов (программных, аппаратных и FakeRAID) обратите внимание на необходимость их предварительной зачистки в текущих выпусках (вплоть до 8.1).
Варианты установок
Установка на несколько RAID-томов в режиме Legacy
При установке создаётся несколько разделов на каждом жёстком диске, соответствующие разделы (одинаковые на разных дисках) объединяются в отдельные тома mdX.
Шаг 1. Готовим разделы для RAID
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее»:
На следующем экране нам необходимо создать одинаковые разделы для RAID на обоих дисках. В данном примере рассмотрено создание двух разделов на RAID: подкачка (swap) и корневая файловая система (/). Вы можете создать и другие разделы (например, для /var) способом, приведённым ниже.
![Making-raid0.png](/Images.www.altlinux.org/e/ea/Making-raid0.png)
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»:
Появится следующий диалог:
Укажите размер раздела (для начала создадим swap размером 2048 Мб) и тип раздела выбрать «Linux RAID». Важно указать именно такой тип.
На оставшемся месте на диске создадим ещё один раздел:
Аналогичным образом создадим такие же разделы на втором диске. При этом разделы на разных дисках должны совпадать по размеру.
Шаг 2. Создание массивов RAID
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID». Если такой кнопки нет, это означает, что вы ещё не создали разделы с типом «Linux RAID»:
В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK:
Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda1 и sdb1. Нажмите на кнопку OK:
У нас создан один раздел в массиве RAID (md0). Теперь аналогично создадим второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK.
В диалоге указания разделов жёстких дисков для RAID-раздела оставьте отмеченными разделы sda2 и sdb2 и нажмите на кнопку OK.
После создания RAID-массивов их можно использовать как обычные разделы на жёстких дисках, то есть, на них можно создавать файловые системы.
Для создания swap выберите пункт «md0» и нажмите кнопку «Создать том»:
Будет запрошен тип создаваемой файловой системы. Для swap выберите «Файловая система подкачки (swap)» и нажмите на кнопку OK:
В следующем окне нажмите на кнопку OK:
Для создания корневой файловой системы выберите пункт «md1» и нажмите кнопку «Создать том»:
Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и нажмите на кнопку OK:
В следующем окне нажмите на кнопку OK:
Для файловой системы Ext2/3/4 необходимо дополнительно указать точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию). Нажмите на кнопку OK:
Поздравляем! Вы создали RAID! Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK.
Шаг 3. Установка загрузчика
Далее при установке будет ещё один момент, который необходимо учесть. Речь идёт про установку загрузчика операционной системы. Выберите «Раздел Linux (md1)» (это созданный нами на RAID раздел корневой файловой системы). После этого нажмите кнопку «Далее» и продолжайте установку как обычно.
Установка на несколько RAID-томов в режиме UEFI
При установке создаётся несколько разделов на каждом жёстком диске, соответствующие разделы (одинаковые на разных дисках) объединяются в отдельные тома mdX.
Главное отличие от установки в режиме Legacy — необходимость отдельного раздела под загрузчик.
Вариант 1
Создание на одном из дисков отдельного /boot/efi
Шаг 1. Готовим разделы для RAID
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее».
На следующем экране нам необходимо создать одинаковые разделы на обоих дисках. В данном примере рассмотрено создание двух разделов: раздел ESP (/boot/efi) и корневая файловая система (/). Вы можете создать и другие разделы (например, для /var) способом, приведённым ниже.
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»:
Необходимо создать FAT32-раздел с GPT-типом ESP (efi system partition): укажите размер ~100—500 Мб, выберите тип раздела «efi system partition»:
В следующем окне выберите тип «Файловая система FAT32»:
Затем укажите точку монтирования /boot/efi:
На оставшемся месте на диске создадим ещё один раздел: тип раздела выбрать «basic data» и не создавать на нем том (снять отметку с пункта «Создать том»):
На втором диске создать два раздела с типом «basic data» без создания на них томов. При этом разделы на разных дисках должны совпадать по размеру.
Шаг 2. Создание массивов RAID
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID»:
В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK. Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda2 и sdb2. Нажмите на кнопку OK:
У нас создан один раздел в массиве RAID (md0).
Для создания корневой файловой системы выберите пункт «md0» и нажмите кнопку «Создать том»:
Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и нажмите на кнопку OK:
В следующем окне нажмите на кнопку OK. И затем укажите точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию):
Теперь для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK.
Шаг 3. Установка загрузчика
На этапе установки загрузчика выберите «EFI (рекомендуемый)»:
После этого нажмите кнопку «Далее» и продолжайте установку как обычно.
Шаг 5. Настройка загрузчика EFI
Чтобы система загрузилась при поломке одного из дисков, необходимо установить загрузчик на каждый диск массива.
Ниже рассмотрены два способа: копирование загрузчика на второй раздел и установка загрузчика на RAID.
Копирование на второй раздел
Содержимое файла /etc/fstab после установки системы:
proc /proc proc nosuid,noexec,gid=proc 0 0
devpts /dev/pts devpts nosuid,noexec,gid=tty,mode=620 0 0
#tmpfs /tmp tmpfs nosuid 0 0
UUID=906da571-bb43-4615-9aad-07029cb9284b / ext4 relatime 1 1
UUID=F5FB-90BD /boot/efi vfat umask=0,quiet,showexec,iocharset=utf8,codepage=866 1 2
Изменить идентификатор у раздела на втором диске и установить туда загрузчик:
- Список идентификаторов разделов:
# lsblk -o +uuid NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS UUID sda 8:0 0 28G 0 disk ├─sda1 8:1 0 255M 0 part /boot/efi F5FB-90BD └─sda2 8:2 0 27,7G 0 part 3f2e043d-2955-0d2b-6fb8-d17ceb836961 └─md127 9:127 0 27,7G 0 raid1 / 906da571-bb43-4615-9aad-07029cb9284b sdb 8:16 0 28G 0 disk ├─sdb1 8:17 0 255M 0 part └─sdb2 8:18 0 27,7G 0 part 3f2e043d-2955-0d2b-6fb8-d17ceb836961 └─md127 9:127 0 27,7G 0 raid1 / 906da571-bb43-4615-9aad-07029cb9284b sr0 11:0 1 1024M 0 rom
- Установить для раздела /dev/sdb1 идентификатор равным UUID раздела на первом диске:
# mkdosfs -i F5FB90BD /dev/sdb1 mkfs.fat 4.2 (2021-01-31
- Где F5FB90BD — идентификатор первого EFI-раздела (/dev/sda1).
- Получить список текущих загрузочных записей EFI:
# efibootmgr -v BootCurrent: 0005 Timeout: 0 seconds BootOrder: 0005,0000,0001,0002,0003,0004 Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331) Boot0001* UEFI VBOX CD-ROM VB2-01700376 PciRoot(0x0)/Pci(0x1,0x1)/Ata(1,0,0)N.....YM....R,Y. Boot0002* UEFI VBOX HARDDISK VB2e56c5b4-4d1c7757 PciRoot(0x0)/Pci(0xd,0x0)/Sata(0,65535,0)N.....YM....R,Y. Boot0003* UEFI VBOX HARDDISK VB1a49e6be-6020bf6e PciRoot(0x0)/Pci(0xd,0x0)/Sata(1,65535,0)N.....YM....R,Y. Boot0004 EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1) Boot0005* altlinux HD(1,GPT,c365f585-611c-6243-9cdd-7a7d1a1628f8,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi)
- Запись под номером 5 (altlinux) отвечает за загрузку системы и указывает на первый жесткий диск. Путь к EFI-образу для загрузки системы: \EFI\altlinux\shimx64.efi.
- Создать аналогичную запись для второго диска:
# efibootmgr -c -d /dev/sdb -p 1 -L "altlinux2" -l "\EFI\altlinux\shimx64.efi"
- Где:
- -c — создать новую запись;
- -d — диск, на котором находится системный раздел EFI;
- -p — номер раздела EFI
- -L — метка для загрузочной записи
- -l — путь образа EFI для загрузки
- Проверить список загрузочных записей EFI:
# efibootmgr -v BootCurrent: 0005 Timeout: 0 seconds BootOrder: 0006,0005,0000,0001,0002,0003,0004 Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331) Boot0001* UEFI VBOX CD-ROM VB2-01700376 PciRoot(0x0)/Pci(0x1,0x1)/Ata(1,0,0)N.....YM....R,Y. Boot0002* UEFI VBOX HARDDISK VB2e56c5b4-4d1c7757 PciRoot(0x0)/Pci(0xd,0x0)/Sata(0,65535,0)N.....YM....R,Y. Boot0003* UEFI VBOX HARDDISK VB1a49e6be-6020bf6e PciRoot(0x0)/Pci(0xd,0x0)/Sata(1,65535,0)N.....YM....R,Y. Boot0004 EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1) Boot0005* altlinux HD(1,GPT,c365f585-611c-6243-9cdd-7a7d1a1628f8,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi) Boot0006* altlinux2 HD(1,GPT,78e85697-9793-634b-86d6-a1e87c15af8b,0x800,0x7f800)/File(\EFI\altlinux\shimx64.efi)
- Скопировать содержимое загрузочного раздела с первого диска на второй:
# mount /dev/sdb1 /mnt # cp -R /boot/efi/EFI/ /mnt # umount /dev/sdb1
- Теперь система может быть загружена с любого диска.
# efibootmgr -b <номер записи> -B
Например:
# efibootmgr -b 6 -B
Установка загрузчика на RAID
Объединить разделы sda1 и sdb1 в RAID и установить на него загрузчик:
- Скопировать данные с загрузочного раздела (/boot/efi) на основной раздел, чтобы после создания рейда можно было их скопировать обратно:
# mkdir /boot/test # cp -a /boot/efi/* /boot/test/
- Отмонтировать /boot/efi:
# umount /boot/efi
- Объединить в рейд (md128) два раздела (sda1 и sdb1):
# mdadm --create --verbose /dev/md128 --level=1 --raid-devices=2 --metadata=1.0 /dev/sda1 /dev/sdb1
- Измените /dev/md128 на что-то другое, если /dev/md128 уже является активным устройством MD.
- Создать файловую систему на RAID:
# mkfs.vfat /dev/md128
- Вывести UUID раздела:
# lsblk -o +uuid NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS UUID sda 8:0 0 28G 0 disk ├─sda1 8:1 0 255M 0 part ab242873-219e-2808-bf97-d17ece5893ca │ └─md128 9:128 0 254,9M 0 raid1 0BFA-B87A └─sda2 8:2 0 27,7G 0 part 6cf6a36a-55c4-e76f-6870-e615cc1bf25b └─md127 9:127 0 27,7G 0 raid1 / c6e98049-6aa8-44fb-9528-16f1cda381ed sdb 8:16 0 28G 0 disk ├─sdb1 8:17 0 255M 0 part ab242873-219e-2808-bf97-d17ece5893ca │ └─md128 9:128 0 254,9M 0 raid1 0BFA-B87A └─sdb2 8:18 0 27,7G 0 part 6cf6a36a-55c4-e76f-6870-e615cc1bf25b └─md127 9:127 0 27,7G 0 raid1 / c6e98049-6aa8-44fb-9528-16f1cda381ed sr0 11:0 1 1024M 0 rom
- В /etc/fstab изменить UUID у записи /boot/efi на новый (в данном примере 0BFA-B87A):
proc /proc proc nosuid,noexec,gid=proc 0 0 devpts /dev/pts devpts nosuid,noexec,gid=tty,mode=620 0 0 #tmpfs /tmp tmpfs nosuid 0 0 UUID=c6e98049-6aa8-44fb-9528-16f1cda381ed / ext4 relatime 1 1 UUID=0BFA-B87A /boot/efi vfat umask=0,quiet,showexec,iocharset=utf8,codepage=866 1 2
- Смонтировать /boot/efi:
# mount /boot/efi
- Скопировать данные из резервной копии в /boot/efi:
# cp -a /boot/test/* /boot/efi/
- Перезагрузить систему.
Вариант 2
Создание на каждом диске раздела с типом ESP, и объединение их в RAID1.
Шаг 1. Готовим разделы для RAID
На этапе подготовка диска выберите пункт «Вручную» («Подготовить разделы вручную») и нажмите кнопку «Далее».
На следующем экране нам необходимо создать одинаковые разделы на обоих дисках. В данном примере рассмотрено создание двух разделов: раздел ESP (/boot/efi) и корневая файловая система (/).
Выберите первый жёсткий диск и нажмите кнопку «Создать раздел»:
Создать раздел с GPT-типом ESP (efi system partition): укажите размер ~100—500 Мб, тип раздела выберите «efi system partition» и снимите отметку с пункта «Создать том»:
На оставшемся месте на диске создать ещё один раздел: тип раздела выбрать «basic data» и не создавать на нём том (снять отметку с пункта «Создать том»):
На втором диске создать такие же разделы.
Шаг 2. Создание массивов RAID
Выберите в списке разделов пункт «RAID» и нажмите на кнопку «Создать RAID». В диалоге создания RAID выберите «MD-устройство уровня RAID1» и нажмите на кнопку OK. Появится диалог указания разделов жёстких дисков для RAID-раздела. По умолчанию выбираются все разделы, поэтому снимите флажки со всех разделов, кроме sda1 и sdb1. Снимите отметку с пункта «Суперблок версии 1». Нажмите на кнопку OK:
Создать второй раздел под корневую файловую систему. Для этого снова выберите пункт «RAID» и нажмите на кнопку «Создать RAID». В появившемся диалоге укажите «MD-устройство уровня RAID1» и нажмите на кнопку OK. В диалоге указания разделов жёстких дисков для RAID-раздела оставьте отмеченными разделы sda2 и sdb2 и нажмите на кнопку OK.
Для создания раздела для загрузчика выберите пункт «md0» и нажмите кнопку «Создать том».
Будет запрошен тип создаваемой файловой системы. Для загрузчика выберите «Файловая система FAT32»:
И затем укажите точку монтирования /boot/efi:
Для создания корневой файловой системы выберите пункт «md1» и нажмите кнопку «Создать том». Для корневой файловой системы выберите тип «Файловая система Ext2/3/4» и затем укажите точку монтирования. Для корневой файловой системы это «/» (предлагается по умолчанию)
Для продолжения установки нажмите кнопку «Далее». Будет запрошено подтверждение изменений. Нажмите на кнопку OK.
Шаг 3. Установка загрузчика
На этапе установки загрузчика выберите «EFI (для съёмных устройств)»:
После этого нажмите кнопку «Далее» и продолжайте установку как обычно.
Установка на разделы одного тома RAID (не поддерживается)
При желании иметь отдельные разделы для /, /home, /var и т. д. создавать несколько томов может оказаться неудобно. В Linux возможно создать один большой том md0 и разбить его на разделы, как обычный hdd. Такой вариант, к сожалению, установщиком в ALT не поддерживается в настоящее время (altbug #11572). Как замену, можно использовать установку на RAID+LVM.
Установка на RAID+LVM
Цитата из сообщения в рассылке community:
Как можно установить LVM поверх md? Я в инсталляторе создаю md, но нет возможности указать это md0 для создания группы томов.
- Создаёте разделы типа Linux RAID (и не забудьте /boot вынести на отдельный обычный или RAID-раздел, с LVM не грузилось).
- В разделе RAID создаёте RAID из этих разделов.
- В разделе LVM создаёте группу томов. Эта группа будет сделана на основе RAID-раздела (я проверял на единственном созданном, без разделов типа Linux LVM).
- В группе томов LVM создаёте раздел(ы), присваиваете точки монтирования.
- Дальше устанавливаете как обычно.
После установки
После того, как операционная система будет установлена и загружена, можно посмотреть, в каком состоянии находится ваш RAID. Для этого войдите под пользователем и введите команду:
$ cat /proc/mdstat
Действия при выходе одного жёсткого диска из строя
Если один жёсткий диск вышел из строя, то загрузите операционную систему (она будет работать и на одном диске), зайдите под пользователем root и проделайте следующее:
- Посмотрите, что сломалось:
# 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_]</pre>
- Из вывода видно, что диск sdb недоступен: U_ показывает отсутствие второго раздела под RAID.
- Подключаем диск и копируем таблицу разделов с диска sda на диск sdb. Также перечитаем скопированную таблицу разделов для ядра. Пример для таблицы разделов MBR:
# 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 # hdparm -z /dev/sdb /dev/sdb: re-reading partition table
- Вместо hdparm можно использовать команду partprobe без параметров.
- В случае GPT нужно копировать 2048 байт в начале диска (bs=2048), следом нужно запустить parted и подтвердить "починку" второй копии GPT, и уже тогда перечитывать ядром таблицу томов:
# dd if=/dev/sda of=/dev/sdb bs=2048 count=1 1+0 записей получено 1+0 записей отправлено 2048 байт (2,0 kB, 2,0 KiB) скопирован, 0,00740497 s, 277 kB/s # parted /dev/sdb GNU Parted 3.2.46-e4ae Используется /dev/sdb Добро пожаловать в GNU Parted! Наберите 'help' для просмотра списка команд. (parted) p Ошибка: Резервная таблица GPT повреждена, но главная кажется корректной, поэтому она и будет использоваться. OK/Отменить/Cancel? OK Модель: ATA VBOX HARDDISK (scsi) Диск /dev/sdb: 30,1GB Размер сектора (логич./физич.): 512B/512B Таблица разделов: gpt Флаги диска: Номер Начало Конец Размер Файловая система Имя Флаги 1 1049kB 268MB 267MB загрузочный, esp 2 268MB 30,1GB 29,8GB msftdata (parted) q # hdparm -z /dev/sdb /dev/sdb: re-reading partition table
- Добавляем разделы со второго диска к RAID-массиву:
# mdadm /dev/md0 -a /dev/sdb1 mdadm: added /dev/sdb1 # mdadm /dev/md1 -a /dev/sdb2 mdadm: added /dev/sdb2
- Смотрим, что получилось:
# 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 в процессе синхронизации.
- Через некоторое время (точнее — 10 минут, смотрите значение finish на этапе 4) смотрим ещё раз:
# 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 полностью восстановлен.
- Обязательно восстанавливаем загрузчик, для lilo:
# 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.
- или для grub2:
# grub-autoupdate Updating grub on /dev/sdb Installation finished. No error reported. Updating grub on /dev/sda Installation finished. No error reported.
- и или для grub2:
# grub-install /dev/sda Установка завершена. Ошибок нет. # grub-install /dev/sdb Установка завершена. Ошибок нет. # update-grub