Резервное копирование и восстановление хранилища загрузки BCD в Windows

Напомним, что Microsoft, начиная с Windows Vista, отказалась от старого загрузчика ОС Windows NTLDR , заменив его новым диспетчером загрузки — BOOTMGR . Код нового диспетчера загрузки хранится в специальном файле bootmgr в корне активного раздела. Диспетчер загрузки выполняет процедуру загрузки в соответствии с существующей конфигурацией, которая содержится в специальном хранилище данных конфигурации BCD (Boot Configuratin Data) . Данное хранилище представляет собой специальный бинарный файл с именем BCD, расположенный в каталоге BOOT активного раздела (это тот самый «скрытый» раздел с меткой System Reserved).

Диспетчер загрузки bootmgr в соответствии с конфигурацией загрузки в хранилище BCD выполняет загрузку ядра установленной на компьютере ОС Windows. Кроме того загрузчик на основании конфигурации BCD может осуществить загрузку других ОС Windows, установленных на данном компьютере (NT/2000/XP), ОС семейства Linux, смонтировать и загрузиться с файла виртуального диска (если Windows установлена на vhd диск) или из wim образа. Файл с bcd в windows 8

Хранилище BCD чем-то напоминает знакомый еще с Windows XP /2000 файл с параметрами загрузки boot.ini. Однако с помощью текстового редактора напрямую его нельзя отредактировать. Модификация хранилища BCD возможна через специальную утилиту командной строки Boot Configuration Data Editor bcdedit.exe (находится в каталоге c:WindowsSystem32).

Нужно понимать, что от правильности и согласованности информации в хранилище загрузки BCD зависит корректность загрузки ОС Windows.И если данный файл будет поврежден или удален, Windows просто не сможет нормально загрузиться. Поэтому при любых экспериментах с хранилищем BCD (установка дополнительной ОС с возможностью двойной или мультизагрузки, настройка дополнительных параметров загрузки, например описанных в статьях « Добавляем безопасный режим в диспетчер загрузки Windows 8 » или «Интеграция DART в диспетчер загрузки») , рекомендуется предварительно сделать резервную копию конфигурации хранилища BCD с целью возможного отката в случае, если что-то пойдет не так.

В данной статье мы рассмотрим методику резервного копирования и восстановления хранилища BCD в Windows 8.

Резервное копирование хранилища BCD

Откройте командную строку с правами администратора и выполните следующую команду:

bcdedit /export e:bcd_backup.bcd

Резевное копирование конфигурации bcd в windows 8

В данном примере конфигурация хранилища BCD будет экспортирована на диск E: (оптимально, чтобы этот диск был неким внешним хранилищем или USB дисков) в файл bcd_backup.bcd.

Пересоздание хранилища BCD

В том случае, если при модификации BCD была допущена ошибка или произошел некий сбой, и система перестает нормально грузиться (например, появляются ошибки BOOTMGR is Missing или BOOTMGR is compressed ) необходимо пересоздать хранилище BCD. Для этого:

  1. Загрузитесь с установочного / загрузочного диска DVD или USB диска с Windows 7 или Windows 8
  2. В случае использования установочного диска выбрать опцию Repair your computer Восстановление с помощью установочного диска win 8
  3. Запустить командную строку, перейдя в раздел Troubleshoot -> Advanced Option ->Command Prompt
  4. В командной строке выполните команды
    • bootrec /FixMbr – перезапись master boot record на системном разделе
    • bootrec /FixBoot – пересоздание загрузочного сектора на загрузочном разделе
    • bootrec /ScanOS – сканирование всех дисков на предмет поиска на них установленных систем, совместимых с Windows
  5. bootrec /RebuildBcd

    Данная команда должна попытаться самостоятельно найти ОС Windows, установленную на данном компьютере и добавить запись об обнаруженной ОС в BCD. Кроме того, имеются следующие параметры запуска bootrec.

    bootrec - утилита, посволяющая автоматически пересоздать конфигурация загрузчика bcd

Восстановление хранилища BCD из бэкапа

Заменить текущую конфигурацию BCD хранилища, импортировав в него ранее сохраненную конфигурацию, можно командой

bcdedit /import e:bcd_backup.bcd

После импорта BCD, перезагрузите компьютер и удостоверьтесь, что все ранее имеющиеся варианты загрузки присутствуют и отрабатывают корректно.

EnglishRussianUkrainian