Назад | Перейти на главную страницу

Linux RAID 1: как сделать вторичную загрузку с жесткого диска?

У меня следующий RAID 1 на сервере Centos 6.5:

# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[3]
    974713720 blocks super 1.0 [2/1] [_U]
    bitmap: 7/8 pages [28KB], 65536KB chunk

md1 : active raid1 sdb2[3] sda2[2]
    2045944 blocks super 1.1 [2/2] [UU]

unused devices: <none>

# df -h
Sist. Arq.            Size  Used Avail Use% Montado em
/dev/md0              915G  450G  420G  52% /
tmpfs                 7,8G     0  7,8G   0% /dev/shm

/ dev / sda вот-вот завершится. Я даже пометил его как неисправный, поскольку он вызывал ошибки чтения.

Сегодня я получил новый HD, который заменит / dev / sda.

Проблема в том, что когда я отключаю текущий / dev / sda, я не могу заставить его загружаться только с / dev / sdb. Похоже, что BIOS ПК не может найти ничего загрузочного на / dev / sdb.

1) Как я могу определить, установлен ли grub в MBR / dev / sdb?

2) Безопасно ли запускать grub-install в / dev / sdb? Это правильный способ сделать его загрузочным?

1) Как я могу определить, установлен ли grub в MBR / dev / sdb?

Вы можете оформить:

# dd if=/dev/sda bs=512 count=1 | xxd | grep -i grub
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.00103986 s, 492 kB/s
0000180: 4752 5542 2000 4765 6f6d 0048 6172 6420  GRUB .Geom.Hard

2) Безопасно ли запускать grub-install в / dev / sdb? Это правильный способ сделать его загрузочным?

Да, вам нужно иметь grub установлен на обоих дисках в массиве.

Вы отметили software-raid, поэтому изучение grub может помочь: Как загрузиться после сбоя RAID (программный RAID)?

GRUB Legacy определяет жесткие диски в файле /boot/grub/device.map и сопоставляет их с устройствами Linux. Файл GRUB Legacy (менеджер загрузки) не идентифицирует диски так же, как Linux. Вместо / dev / sda первый диск будет идентифицирован как (hd0).

Учебники по команде grub можно найти в другом месте в Интернете.

По сути, автор в ссылке запускает команды grub, где каждое устройство Linux рассматривается как один и тот же диск для GRUB Legacy (как он видит его в соответствии с файлом device.map), например (hd0) для всех трех дисков, а не (hd1) и т. д. Это обеспечивает правильное сопоставление между (hd0) и / dev / sda и т. д. для целей резервирования.

Однако решение, отмеченное автором ссылки, не изменяет MBR. Альтернативное решение, связанное с программным рейдом, должно быть выполнено до отказа диска; в противном случае вам понадобится загрузочный диск / устройство. MBR каждого диска должен быть одинаковым для каждого диска в массиве RAID 1, даже с LVM. Загрузчик MBR не может направить систему на другой диск, только на GRUB Legacy того же раздела с пометкой загрузки, иначе он обойдет загрузочный сектор и загрузит ядро ​​(в зависимости от кода), и только на том же диске, насколько я понимаю.