Установка GRUB и добавление /dev/sda в RAID1 на работающей системе LVM
Подготовка GRUB
Установите загрузчик GRUB на второй жёсткий диск (/dev/sdb):
grub
На оболочке GRUB выполните команды ниже:
root (hd0,0)
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
grub>
setup (hd0)
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... yes
Checking if "/grub/stage2" exists... yes
Checking if "/grub/e2fs_stage1_5" exists... yes
Running "embed /grub/e2fs_stage1_5 (hd0)"... 16 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd0) (hd0)1+16 p (hd0,0)/grub/stage2 /grub/grub.conf"... succeeded
Done.
grub>
Затем укажите корневой раздел на втором диске и поставьте GRUB туда тоже:
root (hd1,0)
grub> root (hd1,0)
Filesystem type is ext2fs, partition type 0xfd
grub>
setup (hd1)
grub> setup (hd1)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... yes
Checking if "/grub/stage2" exists... yes
Checking if "/grub/e2fs_stage1_5" exists... yes
Running "embed /grub/e2fs_stage1_5 (hd1)"... 16 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd1) (hd1)1+16 p (hd1,0)/grub/stage2 /grub/grub.conf"... succeeded
Done.
grub>
Завершите работу GRUB:
quit
Вернитесь в обычную оболочку и перезагрузите систему, чтобы убедиться, что загрузка проходит с RAID-массивов:
reboot
Важно: перед установкой GRUB убедитесь, что у вас есть рабочая резервная консоль (например, KVM или доступ к физическому терминалу) на случай проблем с загрузкой.
Подготовка /dev/sda
После успешной загрузки проверьте наличие /dev/md0:
df -h
[root@server1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
4.1G 2.0G 1.9G 51% /
/dev/md0 190M 16M 165M 9% /boot
tmpfs 151M 0 151M 0% /dev/shm
[root@server1 ~]#
Проверьте состояние RAID-массивов:
cat /proc/mdstat
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sdb1[1]
200704 blocks [2/1] [_U]
md1 : active raid1 sda2[0] sdb2[1]
5036288 blocks [2/2] [UU]
unused devices:
[root@server1 ~]#
Вы также можете сверить выводы pvdisplay, vgdisplay и lvdisplay для проверки LVM:
pvdisplay
[root@server1 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/md1
VG Name VolGroup00
PV Size 4.80 GB / not usable 22.25 MB
Allocatable yes
PE Size (KByte) 32768
Total PE 153
Free PE 1
Allocated PE 152
PV UUID pS3xiy-AEnZ-p3Wf-qY2D-cGus-eyGl-03mWyg
[root@server1 ~]#
vgdisplay
[root@server1 ~]# vgdisplay
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 9
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 4.78 GB
PE Size 32.00 MB
Total PE 153
Alloc PE / Size 152 / 4.75 GB
Free PE / Size 1 / 32.00 MB
VG UUID jJj1DQ-SvKY-6hdr-3MMS-8NOd-pb3l-lS7TA1
[root@server1 ~]#
lvdisplay
[root@server1 ~]# lvdisplay
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID yt5b4f-m2XC-F3aP-032r-ulAT-Re5P-lmh6hy
LV Write Access read/write
LV Status available
# open 1
LV Size 4.16 GB
Current LE 133
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 253:0
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV UUID VrPqpP-40ym-55Gs-ShVm-Hlzs-Jzot-oYnonY
LV Write Access read/write
LV Status available
# open 1
LV Size 608.00 MB
Current LE 19
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 253:1
[root@server1 ~]#
Изменение типа раздела /dev/sda1 на Linux raid autodetect
Запустите fdisk для /dev/sda и смените тип первой партиции на fd:
fdisk /dev/sda
Пример интерактивного сеанса:
[root@server1 ~]# fdisk /dev/sda
Command (m for help): <- t
Partition number (1-4): <- 1
Hex code (type L to list codes): <- fd
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): <- w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@server1 ~]#
Если ядро сообщает об ошибке при перечитывании таблицы разделов, перезагрузите машину в удобное окно обслуживания.
Добавление /dev/sda1 в массив /dev/md0
Добавьте раздел в массив:
mdadm --add /dev/md0 /dev/sda1
Проверьте статус:
cat /proc/mdstat
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sda1[0] sdb1[1]
200704 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
5036288 blocks [2/2] [UU]
unused devices:
[root@server1 ~]#
Обновление /etc/mdadm.conf и перезагрузка
Сгенерируйте новую конфигурацию mdadm и замените файл:
mdadm --examine --scan > /etc/mdadm.conf
Проверка содержимого:
cat /etc/mdadm.conf
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=7d2bf9c3:7cd9df21:f782dab8:9212d7cb
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=d93a2387:6355b5c5:25ed3e50:2a0e4f96
Перезагрузите систему:
reboot
Система должна загрузиться корректно с нового RAID1. Поздравляю — вы настроили программный RAID1 на работающей системе LVM.
Когда это может не сработать
- Если таблица разделов не прочитана ядром — требуется перезагрузка.
- Если один из дисков имеет аппаратные ошибки, массив не соберётся правильно.
- Неправильный порядок устройств в GRUB может привести к ошибке загрузки; проверьте, что GRUB установлен на оба диска.
Мини-методология — шаги кратко
- Установить GRUB на оба диска (hd0 и hd1).
- Проверить состояние массивов через cat /proc/mdstat.
- Изменить тип раздела на fd с помощью fdisk.
- Добавить /dev/sda1 в /dev/md0: mdadm –add.
- Обновить /etc/mdadm.conf и перезагрузить.
Чек‑лист для ролей
- Системный администратор: резервная консоль, план отката, окно обслуживания.
- Оператор: мониторить синхронизацию mdadm, уведомлять о падении дисков.
- Инженер по хранению данных: проверка SMART-дисков перед добавлением в массив.
Шпаргалка команд
- grub — запуск оболочки GRUB.
- setup (hdN) — установка GRUB на диск hdN (в GRUB).
- fdisk /dev/sda — редактирование таблицы разделов.
- mdadm –add /dev/mdX /dev/sdY — добавить раздел в массив.
- mdadm –examine –scan > /etc/mdadm.conf — обновить конфигурацию mdadm.
- cat /proc/mdstat — статус RAID.
- df -h — проверка точки монтирования /boot.
Краткий словарь (1‑строчные определения)
- RAID1 — зеркалирование: полная копия данных на двух дисках.
- mdadm — утилита для управления программными RAID в Linux.
- LVM — логический менеджер томов, абстрагирует физические устройства.
Итог
Следуя шагам, вы установили GRUB на оба диска, изменили тип раздела на /dev/sda и добавили /dev/sda1 в RAID1. Обновили /etc/mdadm.conf и перезагрузили систему. Если загрузка не прошла, используйте резервную консоль и откатите изменения или восстановите таблицу разделов из бэкапа.
Примечание: перед изменением таблицы разделов и установкой загрузчика сделайте полную резервную копию важных данных и конфигурационных файлов.
Похожие материалы

Как восстановить файлы из опустошённой Корзины на Mac

Как избежать мошенничества с фальшивыми номерами в AI

Как использовать iMessage на Android

Загрузка Windows Server 2019 в безопасном режиме
