Восстановление загрузчика Windows 10: ручное пересоздание файла конфигурация загрузки BCD
Диспетчер загрузки современных версий Windows использует для загрузки операционных систем, установленных на компьютере, файл BCD (Boot Configuratin Data) , в котором хранятся данные об ОС и параметрах их загрузки. В том случае, если файл BCD удален или поврежден, Windows перестает загружаться. В этой статье мы покажем способ ручного пересоздания файла хранилища данных конфигурации загрузки на примере Windows 10.
В том случае, если файл BCD поврежден или отсутствует, скорее всего, при попытке загрузить Windows, пользователь увидит такое сообщение:
Your PC needs to be repaired
The Boot Configuration Data file is missing some required information
File: \Boot\BCD
Error code: 0xc0000034
При появлении такой ошибки, в первую очередь попытайтесь исправить проблему с загрузкой ОС с помощью режима Startup Repair , который можно запустить из среды восстановления Windows RE .
Совет . Желательно периодически проверять работоспособность среды WinRE, и если она не работает, воспользоваться для ее восстановления методикой из статьи Восстановление среды WinRE в Windows 10.
В том случае, если автоматическое восстановление с помощью Startup Repair не помогло решить проблему, необходимо загрузиться с загрузочного / установочного диска с Windows или в среде WinRe (Repair your computer -> Troubleshoot -> Advanced options -> Command Prompt), запустить командную строку и попытаться создать новый файл конфигурации BCD «с нуля».
Очень важно . Все инструкции, описанные ниже, подходят для обычных MBR+BIOS систем. На системах с UEFI для пересоздания BCD нужно воспользоваться следующими инструкциями по восстановлению загрузчика в Windows 10/8 c EFI или Windows 7 .
В этом примере я буду использовать установочный диск с Windows 10. Загрузившись с него, нужно нажать на экране выбора языка сочетание клавиш Shift+F10 .
Попробуйте восстановить BCD файл автоматически, выполнив команду:
Перезагрузите компьютер и проверьте, загружается ли Windows, если нет, опять загрузитесь с установочного диска и откройте окно командной строки. Нам нужно идентифицировать диски системы (скорее всего назначенные им буквы дисков будут отличаться от дисков, которые вы видели при работе в Windows). Проще всего это сделать с помощью утилиты diskpart. Выполните следующие команды:
Перед вами появится список разделов в системе, назначенные им буквы и их размер. В нашем случае, на диске имеются всего два раздела:
- Раздел System Reserved размером 500 Мб, которому назначена буква диска C: . На этом небольшом служебном разделе по-умолчанию хранится файл конфигурации загрузки BCD ( подробнее )
- NTFS раздел размером 39 Гб, которому назначена буква D:. На этом разделе находится Window и данные пользователя
Важно . Запомните назначенные буквы дисков, т.к. в они будут использоваться в последующих командах.
С помощью следующих команд мы добьемся того, чтобы в MBR и загрузочном секторе имелись нужные ссылки на загрузчик Windows (bootloader).
bootrec.exe /fixmbr
bootsect.exe /nt60 all /force
Совет . Если команда bootsect.exe не будет найдена, попробуйте указать путь
X:\boot\bootsect.exe /nt60 all /force
Далее с помощью команды BCDedit создадим новый файл с конфигурацией загрузки (предполагается, что у вас нет резервной копии BCD ).
Удалите старый (поврежденный) файл BCD на разделе System Reserved и создайте вместо него новый.
del c:\boot\bcd
Создайте временный пустой файл bcd.tmp
bcdedit /createstore c:\boot\bcd.tmp
Создайте запись для диспетчера загрузки bootmgr.
bcdedit.exe /store c:\boot\bcd.tmp /create
Импортируйте в BCD настройки из файла bcd.tmp
bcdedit.exe /import c:\boot\bcd.tmp
Укажите, что загрузчик находится на служебном разделе System Reserved (ему назначена буква диска C: )
bcdedit.exe /set
Настройте время ожидания при выборе ОС
bcdedit.exe /timeout 10
Удалите временный файл
del c:\boot\bcd.tmp
Итак, у нас имеется пустой файл с параметрами загрузчика. Теперь в него нужно добавить записи об имеющихся на компьютере ОС. Создадим в хранилище BCD новую запись для Windows 10 bcdedit.exe /create /d «Windows 10» /application osloader
Команда должна вернуть уникальный идентификатор (GUID) данной записи загрузчика.
The entry <8a7f03d0-5338-11e7-b495-c7fffbb9ccfs>was successfully created.
Укажем, что bootmgr должен использовать данную запись по-умолчанию (после истечения времени ожидания для загрузки используется именно эта запись).
Теперь в новой записи загрузчика осталось указать пути к имеющейся на диске установленной копии Windows (ранее мы определении, что в среде WinPe диску с Windows присвоена буква D: )
bcdedit.exe /set
bcdedit.exe /set
bcdedit.exe /set
bcdedit.exe /set
Осталось сделать данную запись видимой (по умолчанию она скрыта)
bcdedit.exe /displayorder
Итак, мы полностью пересоздали хранилище конфигурации загрузки. Теперь можно перезагрузить компьютер и убедится, что Windows 10 загружается в штатном режиме.
Ошибка 0xc00000e9 при запуске Windows
Причина возникновения ошибки 0xc00000e9 при запуске Windows может быть как вполне безобидной, вследствие действия вирусов (сейчас кому-то уже поплохело), так вполне серьёзной, вызванной отказом оборудования. Как это не печально, но именно второй вариант наиболее вероятен.
Совсем уж к экзотике можно отнести повреждение или плохой контакт SATA кабеля, идущего от материнской платы к жёсткому диску, хотя однажды встретился и такой вариант. А вот с возникновением ошибки 0xc00000e9 при установке Windows, лично мне, сталкиваться не приходилось, потому считаю такую причину надуманной и отнести проблему, всё-таки, к аппаратной составляющей.
Вот и сегодня, сразу после затянувшихся праздников, ко мне попал именно такой компьютер, потому и решил рассказать что является причиной появления ошибки 0xc00000e9 и как с этим бороться.
Печальный диагноз подтвердился, на поверхности жесткого диска было найдено более 1000 сбойных секторов, что сразу определило дальнейшую помойную судьбу этого диска. Однако, данные можно попытаться спасти.
Программы для тестирования и восстановления жёстких дисков
Конечно, имеются и программно-аппаратные комплексы, типа PC3000, но для большинства обычных пользователей они не доступны, да и не каждый захочет выложить немалые деньги за теоретическую возможность восстановить винт своего домашнего компа.
В сотый раз напоминаю, о необходимости делать резервные копии критически важных данных. Если нет копии, значит эти данные вам не нужны.
На сама деле, с тестированием поверхности и восстановлением битых секторов на жёстких дисках, не плохо справляются бесплатные утилиты вроде Victoria или MHDD . Я же предпочитаю использовать HDD Regenerator , о котором уже не раз упоминал на страницах блога. Эта DOS-овская утилита спасла данные уже не с одного жёсткого диска (например, когда менял диск на SSD в Lenovo IdeaPad Yoga 11 ).
Кстати, Victoria или MHDD тоже работают из под DOS, так что вам понадобится сделать соответствующую загрузочную флешку самостоятельно или воспользоваться готовым решением, вроде SonyaPE USB .
На самом деле, эти утилиты не восстанавливают повреждённые сектора, а лишь помечают их как «плохие» (BAD) и записывает данные о них в специальную таблицу — дефект-лист в контроллере. Ну это вообще отдельная тема, если интересно, оставляйте комментарии и будет специальная статья.
Сам процесс проверки диска, мягко говоря, не быстрый и может занять до нескольких суток, в зависимости от объёма и степени ушатанности вашего жёсткого диска. Так что запаситесь терпением. Мне удавалось поднять данные с таких винтов в 80% случаев.
ЕСЛИ СЧИТАЕТЕ СТАТЬЮ ПОЛЕЗНОЙ,
НЕ ЛЕНИТЕСЬ СТАВИТЬ ЛАЙКИ И ДЕЛИТЬСЯ С ДРУЗЬЯМИ.
Ошибка 0xc000000e. При запуске ПК?
Была старая система и приоритет стоял на виндовс 10, диск убрали, должен грузить другой диск с виндовс 7, но перед запуском выдает ошибку восстановления.
Ошибка 0xc000000e, может сопровождаться различными сообщениями, но причиной ее возникновения как правило является невозможность загрузки операционной системы из-за недоступности загрузочного устройства или повреждения загрузочных записей и настроек в Windows.
Ошибка 0xc000000e может сопровождаться сообщениями:
Info: The boot selection failed because a required device is inaccessible.
Missing or corrupt winload.exe
Единственного решения этой ошибки не существует и вам придется проверить настройки и перепробовать несколько способов, так как причины ошибки разные.
Пути решения ошибки 0xc000000e:
Проверьте настройки BIOS, это наиболее актуально если у вас установлено несколько жестких дисков, или подключены какие либо устройства с картами памяти или флешки, в BIOS необходимо убедиться что в качестве загрузочного выбрано правильное устройство, если это не так, то необходимо установить загрузку с правильного диска.
Если в BIOS не виден ваш жесткий диск, проверьте шлейф подключения, но возможно проблема в том что неисправен жесткий диск, особенно это вероятно если у вас ноутбук. В ноутбуках недоступность жесткого диска часто связана с перегревом.
Если в Bios ваш диск доступен, и все настройки установлены верно то вам необходимо загрузиться с установочного диска Windows 7 и выбрать «восстановление». Большую часть ошибок система сможет устранить сама, после запуска восстановления выберите устранение ошибок автоматически, после поиска система сообщит об ошибках и предложить их исправить — соглашайтесь.
Если в автоматическом режиме исправить ошибки не удалось, попробуйте в меню восстановления выбрать «Восстановление запуска». По окончании процесса, система предложит сделать перезагрузку, соглашайтесь, если и на этом этапе ошибка не решена, то вам придется исправлять ошибку вручную.
В сложных ситуациях может не помочь даже восстановление загрузочных параметров и MBR вручную, такое бывает крайне редко, на этот случай инструкция ниже:
Если автоматическое восстановление параметров загрузки не помогает решить ошибку, и команды в консоли:
bootrec /fixmbr
bootrec /fixbootЕсли не помогло, можно перестроить bcd:
Bcdedit /export C:\BCD_Backup
attrib c:\boot\bcd -s -h — r
Ren c:\boot\bcd BCD,. Old
Bootrec /RebuildBcd
Не выполняются и выдают различные ошибки в консоли и при этом команда:
bootrec /scanos
Не может вывести список найденных операционных систем, то попробуйте сделать следующее:
Загрузитесь с установочного диска Windows 7, выберите восстановление, а там выберите запуск командной строка, в командной строке наберите Diskpart, это утилита для работы с разделами жесткого диска, в ней можно просмотреть не только разделы, а и тома, для этого введите команду:
Вы увидите тома, по количеству ваших логических дисков, например если у вас два диска С и D то вы увидите два тома Volume 0 и Volume 1, при этом тому Volume 0 должна соответствовать буква C, а тому Volume 1 буква D, если это не так, то необходимо ввести команды:
select vol 1 assign letter=f
select vol 0 assign letter=c
select vol 1 assign letter=d
С помощью этих команд мы возвращаем буквы разделов на место.
Восстановление MBR (Master Boot Record — главную загрузочную запись) в Windows 7
Иногда бывает что компьютер до этого работавший без сбоев перестает загружаться, при этом могут выдаваться разные ошибки, иногда они содержат слова Boot и MBR а иногда нет, в таких случаях первое что попадает под подозрение это MBR — по русски главная загрузочная запись, фактически это область на жестком диске, флешке или любом другом устройстве с которого может грузиться компьютер, указывающая на раздел с которого необходимо произвести загрузку операционной системы.
В Windows 7, MBR можно попытаться восстановить автоматически, для этого нужен установочный диск, запускаем установку Windows, выбираем язык, затем выбираем восстановление, и выбираем восстановление в автоматическом режиме, но если у вас установлено несколько жестких дисков, то автоматическое восстановление вероятно не поможет, тогда лучше проделать всю процедуру вручную.
Для восстановления MBR вручную, необходимо проделать следующие действия:
— Вставляем диск или подключаем загрузочную флешку, и загружаемся с них
— В меню установки Windows 7 выбираем восстановление
— Выбираем диск на который установлена наша Windows
— В меню восстановления выбираем командную строку
— Определяем диск на который установлена Windows, пишем в командной строке (после каждой строки жмем Enter):
diskpart
select disk 0
list volume
После ввода команд, вы должны увидеть список доступных дисков, в нем необходимо найти букву которая присвоена диску с которого вы загрузились, например это будет буква E.
Выходим из утилиты Diskpart — для этого пишем в командной строке exit и жмем Enter.
Теперь необходимо перейти на диск с которого мы загрузились, для этого в командной строке пишем:
E: и жмем Enter.
Затем вводим в командной строке команды:
cd boot
dir
После ввода команды dir и нажатия Enter, должно появиться содержимое каталога boot, пишем в командной строке:
bootsect /nt60 SYS /mbr
Если все прошло успешно вы получите соответствующее сообщение в командной строке (консоли)
Пишите exit, жмите Enter компьютер перегрузится, и должна пойти загрузка вашей операционной системы.