- Все, что вы хотели знать про загрузку Windows, загрузчики и восстановление загрузки ОС
- Принципы загрузки операционных систем
- Типы MBR
- Разнообразие PBR
- Windows Boot Configuration Data file is missing required information
- ТЕОРИЯ
- Причины ошибки Windows Boot Configuration Data file is missing required information
- Приступаем к работе
- Где взять диск с Windows? Скачать утилиту для загрузки любой версии Windows бесплатно.
- Для загрузочного диска (флешки) с Windows
- Для загрузочного диска (флешки) с Hiren’s BootCD
- Windows Boot Configuration Data file is missing required information – перезапишем BCD
- А как узнать какой диск активный?
- Если ничего не помогло… Ошибка Windows Boot Configuration Data file is missing required information продолжает мешать загрузке
- Но если что-то у вас не получилось, и Windows не загружаясь, возвращает ошибку Windows Boot Configuration Data file is missing required information, вам просто нужно обратить внимание на буквы разделов, в которых вы проводите операции.
Все, что вы хотели знать про загрузку Windows, загрузчики и восстановление загрузки ОС
В этой статье я не планирую подробно рассказывать обо всех типах загрузчиков, но хочу свести воедино всю необходимую информацию, которую нужно знать для создания загрузочных дисков, флэшек, а также для восстановления загрузчиков.
Принципы загрузки операционных систем
При включении компьютера управление процессором получает BIOS, и если он настроен на загрузку (boot) с винчестера, то он подгружает в оперативную память компьютера первый сектор диска (MBR) и передает управление ему. Если у вас несколько жестких дисков, то каждый из них содержит свою MBR. В этом случае можно или менять порядок загрузки дисков в BIOS, или же прописать все операционные системы с разных дисков в один PBR загрузчик, об этом ниже.
Сразу оговоримся, что если у BIOS у вас включен режим загрузки UEFI, то структура разделов диска у вас должна быть не MBR, а GPT. GPT имеет не только другую структуру разделов, но и другую структуру загрузочной области. Там в первый сектор записывается «заглушка» для BIOS (Protective MBR), которая служит для того, чтобы старый Legacy BIOS мог загрузиться с GPT диска в режиме совместимости, если ОС была установлена на GPT (часто в BIOS его называют CSM – Compatibility Support Module). Однако, вы никогда не сможете загрузить ОС с MBR диска, если в BIOS выставлена загрузка в режиме UEFI.
При загрузке операционной системы, сначала считывается первый сектор с устройства загрузки, представляющий собой главную загрузочную запись (Master Boot Record — MBR). Стандартно, в качестве MBR выступает первый сектор загрузочного диска. MBR содержит список разделов, признак активного раздела (раздела, с которого будет выполняться загрузка ОС), некоторые служебные данные, а также программный код для считывания в память загрузочного сектора активного раздела (Partition Boot Record — PBR) и передачи ему управления.
Размер сектора на жестком диске — 512 байт. В секторе MBR хранятся данные, которые должны заканчиваться специальной сигнатурой. Этим словом называется специальная, строго установленная, последовательность из 2 байт с шестнадцатеричными значениями 55h AAh, которая записывается в последние 2 байта сектора и соответственно имеет смещение от начала сектора 1FEh. Если хотя бы один из двух последних байтов отличается по значению, считается, что первый сектор не является MBR и не содержит осмысленной информации. Если компьютер при старте, прочитав первый сектор, не обнаружит правильной сигнатуры, он не будет передавать управление располагающемуся там коду, даже если он правильный, а выдаст сообщение о том, что главная загрузочная запись не найдена.
Общая структура MBR может быть представлена следующей таблицей:
Смещение Длина Описание
000h 446 Код загрузчика
1BEh 64 Таблица разделов
1CEh 16 Раздел 2
1DEh 16 Раздел 3
1EEh 16 Раздел 4
1FEh 2 Сигнатура (55h AAh)
Длина указана в байтах.
Как видно, MBR может содержать информацию максимум о 4 разделах. Каждый 16-байтовый блок, содержащий информацию о разделах, в своем начале содержит признак активности раздела — т.е. признак того, что операционную систему следует загружать именно из этого раздела — может иметь значения 80h (раздел активен) и 00h (раздел не активен). Количество активных разделов должно быть не более одного.
Шестнадцатеричный однобайтовый код далее указывает на тип (ID) раздела. Например, 07h – раздел типа NTFS, 0Bh – FAT32, 17h – скрытый NTFS раздел, 27h – системный скрытый NTFS раздел для восстановления системы.
Типы MBR
Выше мы увидели, что в сектор MBR записывается код загрузчика. Что же это? Дело в том, что в MBR может быть записан как «стандартный» загрузчик, так и альтернативные загрузчики.
Существуют следующие распространенные типы MBR:
- Windows NT версий 5.х и 6.x, занимает 1 сектор. Может загружать ОС только с первичного активного раздела.
- GRUB4DOS версий 5.х и 6.x – занимает 16 секторов. Представляет собой файл gbldr.mbr. также его можно установить в качестве PBR прямо в раздел.
- GRUB 2.0 – универсальный загрузочный менеджер, занимает 63 сектора. Состоит из файлов boot.img и core.img. Может работать с любыми файловыми системами и загружать ОС как с первичных, так и логических разделов.
- PLoP – занимает 62 сектора и имеет продвинутый интерфейс. Позволяет организовать загрузку с CD/Floppy/USB без поддержки и обращения к BIOS.
- UltraISO USB-HDD – занимает 1 сектор и позволяет выполнять загрузку с внешних USB HDD дисков.
Конечно, с учетом многообразия ОС, существует масса других MBR, но они не так популярны.
Операционные системы дружат только с определёнными типа загрузчиков, однако это не значит, что их нельзя модифицировать для поддержки других ОС. Так, в Windows MBR можно добавить информацию о Linux разделе, но этого недостаточно, чтобы Linux стал грузиться. Для этого также потребуется редактировать и PBR. Однако линуксовый LDLINUX.SYS требует наличия своего микрокода в MBR, чтобы обращаться к нему в процессе загрузки, то есть если у вас загрузочная запись Windows NT MBR, а загрузчик GRUB, то такая схема работать не будет. Виндовсовые загрузчики могут обойтись без наличия соответствующего микрокода в MBR, поэтому они могут грузиться и через GRUB MBR.
Главное, что вам нужно понять, что MBR содержит микрокод, инструкции для процессора, а не файлы. PBR же указывает на загрузчик, который является файлом.
Разнообразие PBR
Мы с вами выяснили, что MBR передает управление на активный раздел с PBR. PBR (Partition Boot Record), так же называют volume boot record (VBR) – это микрокод в начальном секторе раздела диска (часто это сектор 63), который содержит информацию, какой же загрузчик искать.
Существуют следующие загрузчики:
Тип MBR — NT 5.x/6.x, 1 сектор
- io.sys для MS-DOS, Windows 95/98/МЕ
- ntldr для Windows 2000/XP/2003
- bootmgr для Windows Vista/7/8/8.1/10
Тип MBR — Grub4DOS, 18 секторов
Тип MBR — LILO/GRUB и др. линуксовые (к-во секторов зависит от версии и количества файлов)
- ldlinux.sys – основной базовый модуль
- syslinux.sys — для загрузки с FAT, FAT32, NTFS
- isolinux.bin — для загрузки с iso9660
- pxelinux — для загрузки по PXE
- extlinux для загрузки с ext2/ext3/ext4 или btrfs
Как я сказал выше, загрузчик является не загрузочной областью, а бинарным файлом.
- Файлы Windows NTLDR или BOOTMGR должны лежать в корне активного системного раздела и работают они по-разному. Об этом ниже.
- Файл GRLDR используется Grub4DOS также должен лежать в корне партиции, с котрой выполняется загрузка
- Syslinux – универсальный загрузчик, содержащий много модулей и поддерживающий загрузку с файловых систем ext2/¾, FAT, NTFS, CD/DVD дисков, по сети через PXE. Позволяет организовать текстовое или графическое загрузочное меню.
Чаще всего этот загрузчик используют для запуска Linux с файловых систем FAT/NTFS или же создания мультизагрузочных USB флэшек, позволяющих загружать как Linux-совместимые приложения под DOS, так и Windows PE.
Например, типичные пример создания мультизагрузочной флэшки – Multiboot USB 2k10, создаваемые уважаемыми conty9 & korsak7. Мультизагрузочный диск системного администратора с возможностью загрузки c CD/DVD, флешки, USB-HDD и обычного HDD и состоящий из нескольких Windows PE-сборок, а также DOS версий продуктов компании Acronis – например Acronis True Image (выполнены на Linux-ядре). Именно из-за этого смешанного зоопарка систем и приходится использовать загрузчик Syslinux (хотя можно и Grub4DOS).
В своем арсенале вам необходимо обязательно иметь утилиту BootICE. Уникальная в своём роде утилита для изменения или бэкапа/восстановления MBR (Master Boot Record) или PBR (Partition Boot Record). С BOOTICE, вы можете легко изменять тип MBR/PBR. Поддерживается загрузочные записи: Grub4DOS, SysLinux, PLoP, MS NT52/60… Например, с помощью этой утилиты, вы можете установить Grub4DOS вашим MBR или PBR, установить NTLDR или BOOTMGR к вашему PBR, установить SYSLINUX на PBR, и так далее.
Windows Boot Configuration Data file is missing required information
В статье описывается общий случай возникновения ошибок типа “file: \boot\bcd” и “The Windows Boot Configuration Data file is missing required information” или “The Windows Boot Configuration Data file does not contain a valid OS entry”с номером ошибки “status 0xC00000XX”, из-за чего Windows 7/8/10 просто не загружается. Рассмотрим общие варианты как выявить причину незагрузки ОС или невозможности её установить, и как положение исправить.
ТЕОРИЯ
Для того, чтобы понять причину появления ошибок в загрузочном процессе системы, выдаваемых на экран статусом 0xC0000XXX, нужно уяснить общий процесс загрузки операционных систем Windows версий от 7 до 10. Итак, рабочий экран системы появится, если в следующей цепочке не будет никаких ошибок:
Дословно же ошибка Windows Boot Configuration Data file is missing required information означает, что “в файле Windows BCD не хватает для корректной загрузки информации”. И если продолжить блоковую интерпретацию принципа загрузки Windows в современных её версиях, то оно уже примет такой вид:
Причины ошибки Windows Boot Configuration Data file is missing required information
Статус возвращаемого состояния (кода ошибки) здесь в принципе уже неважен – система пытается дать понять, какая часть информации потеряна. Смысла в этом для пользователя информация много не несёт. Но уяснить нужно следующее – причиной появления ошибки на 99% вероятности является то, что в загрузочной записи жёсткого диска потеряны сектора. И загрузчик не способен считать оттуда информацию, либо необходимые для и во время установки системы файлы не могут туда быть корректно скопированы и там разместиться. Если плохие секторы жёсткого диска не вызваны физическими повреждениями, а имеют “программную” природу, то всё абсолютно поправимо.
Приступаем к работе
Предлагаю исправить ошибку, разбив работу на несколько этапов:
Во первых, проверьте жёсткий диск на наличие ошибок. Утилит для затирания бэд-секторов или записи нулей, немало. Одна из них Check Disk или chkdsk.exe давно сидит в Windows, но без интерфейса Windows она пока недосягаема. Так что нам придётся воспользоваться либо загрузочным носителем (флешка или диск) с вашей версией операционной системы, либо живым LiveCD/DVD диском на примере Hiren’s BootCD, куда утилита входит в состав сборки. В любом случае эта программа самодостаточна, и потому её запуск решит большинство проблем с побитыми кластерами HDD. О её работе у меня написано много, но сейчас посмотрим процесс запуска ещё раз.
Где взять диск с Windows? Скачать утилиту для загрузки любой версии Windows бесплатно.
Для загрузочного диска (флешки) с Windows
Выставите загрузку с диска (флешки) через BIOS и загрузитесь с нужного носителя. Если BIOS не поддерживает загрузку с USB, воспользуйтесь возможностями расширить меню BIOS и принудительно заставить загрузиться с устройства с USB интерфейсом. Читайте статью Как заставить BIOS загрузиться с флешки.
Пропустим установку Windows, добравшись до Восстановления системы:
Пусть средство восстановления найдёт операционную систему
на этом фото установщик нашёл систему на диске D
Не важно, каким путём вы пойдёте: вам нужна командная строка окна Параметры восстановления системы:
В командной строке последовательно записываем команды (первая команда буква диска – C или D):
где chkdsk – утилита, С: – диск с системой, /r – флаг команде на ремонт секторов:
Будем надеяться, утилита справится с вашими проблемами.
Однако помните.
Если на вашем диске было или сейчас находятся несколько операционных систем на разных локальных томах и разделах, советую провести операцию проверки и восстановления ВСЕХ ДИСКОВ. Загрузочные файлы системы могут находится именно там.
Для загрузочного диска (флешки) с Hiren’s BootCD
Всё также, выставляем загрузку с диска, выберем в меню MiniXP, дождёмся запуска системы и найдём утилиту прямо в меню Windows XP PE:
Запускаем и ищем наш диск:
и здесь тоже система находится на диске D
Windows Boot Configuration Data file is missing required information – перезапишем BCD
Предположим, что Check Disk сделала своё дело и привела диск в порядок. Однако побитые файлы она восстанавливать не умеет. Теоретически одна из кнопок окна в предыдущем абзаце смогла бы помочь справиться с ошибками загрузки Windows. Встроенный инструмент, запускаемый по кнопке Восстановление системы с последующей перезагрузкой последовательно запускает большое количество ремонтных утилит (в том числе и Bootrec.exe). Однако, если перезагрузка системы ни к чему не привела, файлы с загрузочной информацией придётся перекомпоновать вручную.
И снова напоминаю – интересующий нас файл \boot\bcd может находиться НЕ НА ДИСКЕ С: !
Для перезаписи мы будем пользоваться теми же дисками. Наша задача – перезаписать указанный выше файл. Bootrec.exe иногда не может этого сделать автоматически. Но существуют три готовые и применимые на большинстве машин команды, вводимые в консоли команд загрузочного и Live дисков. Введите их последовательно в консоли, нажимая после каждой клавишу ввода:
С их помощью помощью на диске С: создаётся база замены файла, старый файл переименовывается и даётся команда на запись на диске С: нового файла \boot\bcd.
Операция элементарна, если система одна, и файл находится на том диске. Однако если система была мультизагрузочной, вам нужно выцепить тот раздел, который отвечает за загрузку. Ну, не десятки же их, в конце концов… Так что, если описание проблемы попадает под вашу ситуацию, вам лучше убедиться, что буква диска (в данном случае С:) указывается в команде правильно. Иными словами, нужно найти активный диск.
А как узнать какой диск активный?
Сначала нам нужен список всех разделов на диске (я покажу, как это сделать на другом HDD). Это может показать команда diskpart. Так и делаем. Всё в той же командной консоли:
…запускаем diskpart . Теперь поочерёдно вводим команды на “показать все диски”, “выбрать нужный диск”, “показать на нём все разделы”, “выбрать какой-то из разделов” и “рассказать о разделе”. В консоли команд эти команды выглядят так (Х – порядковый номер диска и раздела); после каждой из команд – ввод клавишей Enter:
У меня команды выглядят так:
А вот информацию, которую мы ищем я пометил красным. Повторите команды, пока не вычлените тот единственный диск, который утилита в консоли пометит ответом Активный: Да. Смотрим, что у меня дальше:
То есть именно с диска С объёмом 100 Гб ОС Windows 7/8/10 и загружается (точнее, пока не загружается). Вам остаётся вписать правильную букву диска в командах, что указаны выше, и необходимый файл будет воссоздан известными вам уже командами:
Если ничего не помогло… Ошибка Windows Boot Configuration Data file is missing required information продолжает мешать загрузке
Если вышеприведённые манипуляции не дали положительного результата – ничего страшного. Вы на верном пути – просто системный сбой вызвал повреждение куда большего количества файлов. Вам придётся переформировать уже хранилище BCD. Никаких дополнительных инструментов не понадобится. Однако Live CD нам уже не в помощь. Используем знакомую вам консоль, но при вводе команд следите за моими пояснениями. Итак…
- ставим загрузку с диска
- следуем вышеописанному принципу, пока не найдём консоль:
где Х – буква тома, куда Windows установлена, и где располагаются её системные файлы. И, опять же, это НЕ ОБЯЗАТЕЛЬНО Активный диск! Запутались? Ничего трудного, просто повторите все команды с утилитой diskpart и обратите внимание на информацию по разделам, но уже в другом столбце:
Столбец Сведения возвращает флаг Системный. Это и есть системный раздел диска – Windows лежит там. Часто буква С диска совпадает с информацией о том, что диск является системным и активным.
Но если что-то у вас не получилось, и Windows не загружаясь, возвращает ошибку Windows Boot Configuration Data file is missing required information, вам просто нужно обратить внимание на буквы разделов, в которых вы проводите операции.
С помощью следующих команд скопируем файл и импортируем его в активный раздел жёсткого диска:
Если первая из команд выдаст ошибку, мол, есть такой файл, удалите его не сомневаясь командой
Создаём диспетчер загрузки для файла командой:
Далее указываем активный раздел и время на выбор пользователем записи в списке загрузочного меню (у меня 15 сек.):
Создаём элемент списка загрузки систем (в кавычках укажите любое имя системы, например, WINDOWS):
По нажатии клавиши ввода утилита bcdedit вернёт уникальный идентификатор GUID, который нужно потом вставить в фигурные скобки в следующей команде
Осталось немного – присвоить параметры конфигурации файла, которые у всех Windows одинаковые. Их можно легко скачать в сети, но я сделал это за вас (следите за буквой диска – у вас может быть свой; у меня – С:):
Последняя из команд заставляет Windows корректно заметить вход для загрузки. Ошибки Windows Boot Configuration Data file is missing required information больше не будет.