У меня был сервер под управлением Windows 2003, который располагался в массиве RAID5, сформированном Promise FastTrak SX4100, который, как я думал, был аппаратным из-за его выделенного процессора и буферной памяти и его способность загружать DOS и Windows. Однако оказывается, что этот контроллер обслуживается только аппаратно , а логика более высокого уровня выполняется микропрограммой x86, работающей на главном процессоре. Теперь, когда старая материнская плата (или процессор?) Умерла, и я попытался перейти на более современное оборудование, ориентированное на UEFI, RAID-контроллер не может инициализироваться даже в устаревшем режиме (BIOS) - он зависает при сканировании дисков, т.е. его прошивка получает управление от UEFI / BIOS и выводит приветственные сообщения на экран, но не достигает прогресса в идентификации подключенных дисков SATA.
Поэтому я подумал, что мне, возможно, повезет больше с запуском Windows внутри виртуальной машины с подключенной к ней картой PCI, тем более что NT 5.2 вряд ли будет совместим с современными наборами микросхем, в то время как Qemu обеспечивает полностью удобную эмулируемую среду в классическом режиме BIOS. Проблема, однако, в том, что SeaBIOS не перечисляет RAID-контроллер в качестве загрузочного устройства , несмотря на то, что он может успешно взаимодействовать с ним.
То есть:
У меня также была идея, что здесь может помочь GRUB, т.е. загрузка из SeaBIOS в GRUB (на небольшом отдельном диске), а затем последовательная загрузка в Windows. Однако мне не удалось его настроить, так как среды Linux не видят массив из-за отсутствия драйверов и, следовательно, не могут помочь с созданием меню, но сам GRUB не слишком дружелюбен и не многословен - я даже не мог понять, действительно ли он видит массив как диск, либо требует предварительной загрузки драйверов, либо любых других предварительных условий. Спасательные комплекты, такие как RescaTux или PartedMagic, тоже бесполезны, поскольку они ориентированы на восстановление существующих установок GRUB, а не на установку новых.
Для справки, я экспериментировал с Xen 4.7.2, используя вышестоящую версию Qemu 2.6.2 с SeaBIOS 1.9. 1, поверх openSUSE 42.2 с Linux 4.4.62. Форумы и списки рассылки показывают, что загрузка с PCI RAID уже была возможна в гораздо более старых версиях, более десяти лет, поэтому я предполагаю, что виновата именно моя установка. Но я не могу понять, действительно ли SeaBIOS может загружаться с моего RAID-контроллера?
Конечная цель - вернуть сервер любыми доступными средствами, в том числе путем приобретения другого совместимого старого оборудования. Но меня просто заинтересовала эта конкретная технология, так как виртуальные машины казались более универсальным и перспективным методом продления жизни устаревших систем.
Да, SeaBIOS поддерживает загрузку и запуск дополнительных дисков PCI. Что, по-видимому, действительно работает, поскольку вы можете видеть сообщения загрузки контроллера рейда. Затем PCI-ROM должен зарегистрировать все загрузочные диски, чего здесь не происходит. Возможно, проблема в конфигурации. Проверяйте утилиту конфигурации массива всякий раз, когда вы можете настроить там загрузочный том. Также может быть какая-то ошибка или несовместимость ...
Если это не сработает, вы можете попробовать что-нибудь совершенно другое: подключите диски к какому-нибудь sata-контроллеру, поддерживаемому Linux, затем проверьте, может ли dmraid декодировать том raid. Если это сработает, вы можете подключить его как простой диск к вашей виртуальной машине win2k3.
Тогда у вас есть только один способ:
PCI V2.2
слот расширения и попробуйте загрузиться с рейд-контроллера. C:
) с помощью Программа GParted
. На логическом RAID-диске должно быть больше 8 ГБ + ОЗУ без разделов. Убедитесь, что вы сможете загрузиться после этого. dd
в файл на резервном диске. Затем подключите диски к новой материнской плате, установите Linux на программный RAID1 . Пример: у вас есть 4 диска по 120 ГБ в RAID5 и один логический диск / dev / sda
. У вас есть только один раздел / dev / sda1
, который представляет собой диск Windows C:
. После уменьшения на GParted
он имеет размер 300 ГБ. Вы подключаете другой резервный диск командой: mount / dev / sdb1 / mnt
. Затем скопируйте первые 301 ГБ RAID-диска на резервный диск командой dd if = / dev / sda of = / mnt / disk-c.img bs = 4M count = 77056
. Когда он будет скопирован, сделайте umount / mnt
.
Пример: Создайте логический том с помощью команды lvcreate -L 302G -n win_disk vg0
. Подключите резервный диск и скопируйте данные на том dd of = / dev / vg0 / win_disk if = / mnt / disk-c.img bs = 4M count = 77056
.
Поместите свой RAID-контроллер в корзину.
PS:
Когда я создал виртуальную машину Windows 2000, я назначил следующее виртуальное оборудование:
Драйверы:
Гостевые драйверы Windows для KVM libvirt