Почему система не загружается с зеркального или клонированного диска?

        Проблема, с которой можно столкнуться после отказа первого диска в программном массиве RAID-1 — со второго диска система не загружается. Вот как это может выглядеть:

        Да, ничего особенного, просто чёрный экран с мигающим курсором в углу. Но система не загружается. Многие сразу начинают обвинять кого угодно — плохой Microsoft, плохие программные RAID, плохой диск, плохой компьютер и т.д. На самом деле, дело в элементарном незнании порядка загрузки компьютера. Механизм этот работает следующим образом:

  • Компьютер включается, BIOS firmware выполняет процедуру самотестирования (Power-On Self-Test, POST);
  • BIOS ищет главную загрузочную запись (Master Boot Record, MBR) указанного в CMOS загрузочного устройства. В данном случае, жёсткого диска;
  • Считанный с жёсткого диска MBR ищет и передаёт управление загрузочному сектору (boot sector) активного первичного раздела (active primary partition) этого диска;
  • Загрузочный сектор передаёт управление находящемуся на этом же разделе загрузчику операционной системы;
  • Загрузчик ОС загружает ядро операционной системы с соответствующего раздела (как правило, всё того же);
  • Происходит загрузка драйверов устройств (device drivers) и интерфейса пользователя (user interface).

        Так вот вся проблема заключается в том, что программное зеркалирование Windows Server или клонирование типа partition-to-partition дублирует не весь диск целиком, а только указанные разделы. MBR в территорию разделов не входит, так как находится в совершенно отдельном месте — в первом секторе нулевого цилиндра, поэтому программным зеркалированием разделов на второй диск может не скопироваться. Когда новый диск поставляется с завода, MBR на нём тоже отсутствует — это же новый, абсолютно чистый диск:

        Вообще, существуют три способа попадания главной загрузочной записи на диск:

  1. Установка операционной системы. Как правило, ОС создаёт MBR в момент начала инсталляции себя;
  2. Дублирование диска целиком (клонирование либо аппаратный массив RAID-1);
  3. Восстановление с помощью установочного компакт-диска Windows или сторонними средствами типа LiveCD.

        На самом деле, программное зеркалирование системного раздела в Windows Server дублирует и MBR. Но я видел ситуации, когда этого по каким-то причинам не происходило. Поэтому, если столкнётесь с подобной проблемой, а MBR заранее на диске не приготовили, не спешите расстраиваться — проблема загрузки решается достаточно просто и быстро с помощью установочного компакт-диска Windows.

Update 06-Dec-2011:

        Что ж, так оно и случилось вчера на одном из моих серверов с Windows Server 2008. Отказал первый диск в зеркале, а на второй изначально MBR добавить я забыл. Изъяв сбойной диск, я попытался загрузить сервер с зеркального и получил сообщение:

Boot Failed. Press any key to reboot.

        Проблема была решена следующим образом:

  1. Загрузили компьютер с установочного компакт-диска Windows Server 2008.
  2. Выбрали опцию Repair your computer. Правда, диски она не увидела, установленную систему не распознала.
  3. Выбрали команду Command Prompt.
  4. В командной строке с помощью программы diskpart я убедился, что диск виден в качестве чужого (foreign) и выполнил импорт дисковой группы командой import.
  5. Выполнил команду bootrec /FixMbr и перезагрузил компьютер.
Реклама

5 Responses to Почему система не загружается с зеркального или клонированного диска?

  1. Tech says:

    Northon Ghost в помощь, есть надстройка Image Disk. =))

  2. В Ghost есть вариант клонирования Partition To Partition, после которого может случиться беда с MBR. Просто нужно знать.

  3. konstanteen says:

    «проблема загрузки решается достаточно просто и быстро с помощью установочного компакт-диска Windows» — остаётся ощущение недосказанности.
    http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/bootcons_fixmbr.mspx?mfr=true
    http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/bootcons_fixboot.mspx?mfr=true

  4. Tech says:

    Windows 7 и Windows Server 2008:

    bcdedit /export C:\BCD_Backup
    c:
    cd boot
    attrib bcd -s -h -r
    ren c:\boot\bcd bcd.old
    bootrec /RebuildBcd

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

%d такие блоггеры, как: