Что такое формат файла BCD?
Файл BCD (Boot Configuration Data Store) представляет собой куст реестра Windows, который заменил текстовый файл boot.ini, использовавшийся в Windows XP и более ранних версиях. Представленный в Windows Vista в 2007 году, он является авторитетным хранилищем данных, которое диспетчер загрузки Windows считывает при включении питания для определения доступных операционных систем, параметров их загрузки и записи загрузки по умолчанию.
Внутренне файл является стандартным кустом реестра формата regf, содержащим загрузочные объекты с ключами GUID, каждый из которых имеет подразделы Description и Elements, кодирующие пути к загрузчику ОС, GUID разделов, флаги ядра, время ожидания загрузки, параметры безопасного режима и параметры абстракции оборудования. Глобальные настройки диспетчера загрузки находятся в известном объекте {9dea862c-5cdd-4e70-acc1-f32b344d4795}.
В системах UEFI активное хранилище находится по пути \EFI\Microsoft\Boot\BCD в системном разделе EFI. В устаревших системах MBR/BIOS оно располагается в \Boot\BCD на активном системном разделе. Файл можно подключить в режиме «только чтение» в regedit («Файл» → «Загрузить куст») для проверки, но редактирование всегда должно выполняться через BCDEdit.exe или графическую оболочку, такую как EasyBCD, чтобы избежать повреждения куста.
Транзакционная целостность поддерживается с помощью сопутствующих лог-файлов (BCD.LOG, BCD.LOG1, BCD.LOG2). Повреждение приводит к ошибке 0xc0000034 - «Файл данных конфигурации загрузки отсутствует или содержит ошибки» - исправляется из среды восстановления Windows с помощью bootrec /rebuildbcd или bcdboot.
Безопасность и защита
РИСК: MEDIUMНеправильное редактирование BCD может сделать Windows незагружаемой. Всегда делайте резервную копию перед изменениями: bcdedit /export C:\BCDbackup. Вредоносное ПО (особенно буткиты) может изменять хранилище BCD для загрузки вредоносного кода до запуска ОС; Windows Secure Boot и проверки целостности прошивки UEFI смягчают эту угрозу на современном оборудовании. НЕ загружайте «инструменты для восстановления BCD» с неофициальных сайтов - большинство из них являются мошенническим ПО.
Детали формата
в двух словах- Turbo Pascal Compiled Unit (устаревшее) - Старый Borland Turbo Pascal использовал расширение .bcd для файлов модулей двоично-десятичного кода (Binary Coded Decimal) - совершенно не связано, до 1995 года.
Программы, открывающие файлы BCD
Технические подробности
глубокая спецификация| Формат файла | Куст реестра Windows (бинарный формат `regf`); структурно идентичен стандартным кустам реестра |
| Сигнатура файла | `regf` (hex `72 65 67 66`) со смещением 0 |
| Порядок байтов | Little-endian (от младшего к старшему) |
| Путь UEFI | `\EFI\Microsoft\Boot\BCD` в системном разделе EFI |
| Путь MBR / legacy BIOS | `\Boot\BCD` на активном системном разделе |
| Структура объекта | Ключи реестра с GUID, каждый с подразделами `Description` и `Elements` |
| GUID диспетчера загрузки | `{9dea862c-5cdd-4e70-acc1-f32b344d4795}` - глобальный объект настроек диспетчера загрузки |
| Транзакционные логи | `BCD.LOG`, `BCD.LOG1`, `BCD.LOG2` обеспечивают атомарную согласованность записи |
| Версии формата куста | Версии `regf` 1.3-1.6 в зависимости от выпуска Windows |
| Предшественник | Заменил `boot.ini` (простой текст, Windows XP / 2003) структурированным бинарным хранилищем |
| Типичный размер файла | 256 КБ - 2 МБ |
| Инструмент управления CLI | `BCDEdit.exe` (встроенный); графическая альтернатива: EasyBCD |
| Симптом повреждения | `0xc0000034` - «Файл данных конфигурации загрузки отсутствует или содержит ошибки» |
| Метод восстановления | `bootrec /rebuildbcd` или `bcdboot` из среды восстановления Windows |
| Выпущен | 2007 (Windows Vista) |
| Последняя версия | Windows 11 BCD schema (2021) |
| Спецификация | learn.microsoft.com |
Конвертации BCD
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах BCD.