Проблема при воссоздании BCD в Windows 7 64bit - не найдено требуемое системное устройство

При обновлении драйверов NVIDIA произошел сбой при установке Windows 7, поэтому я работаю над устранением ущерба.

Что я могу сделать: я могу загрузить установку Windows с USB-накопителя и загрузить загрузочный компакт-диск Hiren. Хотя автоматическое восстановление Windows не удается, я могу получить доступ к командной строке при загрузке установки Windows с USB-накопителя, и я вижу свой диск и все свои данные.

Что я не могу сделать: я не могу загрузиться в Windows - я получаю это сообщение:

Windows failed to start. A recent hardware or software change might be the cause. To fix the problem:
1. Insert Windows CD and run a repair your computer option.
File: /Boot/BCD
Status: 0xc000000f
Info: an error occurred while attempting to read the boot configuration data.

Кажется, что-то не так с моим /Boot/BCD, поэтому я пытаюсь воссоздать его с нуля. Я перепробовал все методы, описанные здесь (включая восстановление Windows, которое не удалось), и у меня остался последний (в нижней части этой страницы). Когда я набираю следующую команду, как в учебнике:

bcdedit.exe /import c:\boot\bcd.temp

... происходит сбой со следующей ошибкой:

The store import operation has failed.
The requested system device cannot be found.

Многие результаты Google говорят, что я должен использовать diskpart, чтобы активировать свой раздел, однако он уже установлен как активный.

Кроме того, когда я пытаюсь это:

bcdedit /enum

Сбой с похожим сообщением:

The boot configuration data store could not be opened.
The requested system device cannot be found.

Кто-нибудь знает, что означает это сообщение об ошибке и какое запрошенное системное устройство?

Я бы хотел избежать переустановки Windows, так как все файлы на диске выглядят нормально.

10 ответов

Решение

Итак, вот как я наконец решил это.

Воссоздание BCD, как в главе учебника "ядерный холокост", о котором я упоминал в своем вопросе, в конце концов сработало, но с одной небольшой модификацией. Я получил идею в этой теме. Кажется, что сообщение, которое я получил, сообщало мне, что bcdedit не может найти магазин BCD. Итак, вместо того, чтобы вводить это:

bcdedit /import c:\boot\bcd.temp

... мне нужно было только вручную указать магазин:

bcdedit /store c:\Boot\BCD /import c:\boot\bcd.temp

Это также необходимо для остальных команд в руководстве:

bcdedit /store c:\Boot\BCD <the rest of the command>

С этой модификацией все команды в учебнике работают как положено. Когда я воссоздал BCD, я смог загрузить свою оригинальную Windows.

Не имеет непосредственного отношения к вашей проблеме, как вы ее решили, а скорее к исходному описанию (в частности, "Запрашиваемое системное устройство не может быть найдено" в операциях BCD, несмотря на все попытки воссоздать / восстановить):

Эта ошибка может произойти, если вы загружаетесь с USB-накопителя, и ваш BIOS поддерживает данный USB-слот, а среда Windows PE / repair - нет!

Я потратил два дня, вырывая волосы, борясь с этой проблемой (хранилище BCD ВСЕГДА было недоступно с ошибкой "Запрашиваемое системное устройство не может быть найдено", независимо от того, что я сделал), только чтобы обнаружить, что проблема была просто Слот USB Я подключил свою загрузочную флешку. Подключив ее к другому (usb 2.0 вместо usb 3.0) слоту, стандартные действия по исправлению работали нормально.

Что еще хуже, я позже обнаружил, что это было связано с подключением не того слота и разрешением среды аварийного восстановления, чтобы попытаться авторемонтировать, что я все испортил в первую очередь!


Update: Another user (improvedcomputers) contacted me to confirm that this also happened to them; as all their USB slots were unrecognized by Windows 7 PE they ended up having to pull the drive and perform the repair on another computer.


Update: I had hard time even reinstalling windows on my laptop. From this post I learned and realized the Windows 7 PE does not recognize USB drive. Although it booted from the USB drive image due to some reason it was not able to start up the installation process. After whole day of efforts finally I tried it with DVD and it worked. I am using Lenovo W520

Ничто из других ответов не помогло в моем случае, и у меня не было возможности загрузить Windows RE с DVD. Надеюсь, этот ответ попал мне в глаза.

Я попробовал решения из связанных руководств и закончил без BCD вообще (фактически я не знаю, было ли это там в начале). Итак, то, что спасло меня от переустановки всей системы, было:

bcdboot.exe C:\Windows /s C:

Надеюсь, это кому-нибудь поможет.


Обновление: это, наконец, сработало для меня с одной маленькой модификацией. Моя проблема была объединенной проблемой многих из перечисленных здесь (загрузка с флешки, прикручивание начальной рабочей BOOT).

Моя проблема заключалась в том, что RE зарегистрировал мой Windows диск как D:\в то время как это было C:\ обычно. Бег bcdboot.exe D:\Windows /s C: сделал трюк!

Та же проблема возникает, когда установка Windows на диске настроена для загрузки UEFI, но процесс восстановления предпринимается с помощью команд, сохраненных на USB-накопителе, который был загружен в режиме без UEFI ("устаревший").

Итак, представьте, что у вас есть загрузочный установочный USB-диск Windows 8, который не может быть загружен в режиме UEFI, но только в устаревшем режиме. Можно подумать, что можно просто изменить настройки BIOS с загрузки UEFI на устаревшую загрузку. И, фактически, после этого изменения USB-накопитель можно загрузить, и, конечно, можно получить доступ к командной строке Windows. Однако в этой ситуации нельзя "восстановить" установку Windows на диске, который ранее был установлен и использовался в режиме UEFI.

В этом сценарии (режим загрузки "legacy" и загрузка с установочного USB-диска Windows 8) выполнение bootrec /rebuildbcd не удается с The requested system device cannot be found, А также BCDBoot C:\Windows не удается с Failure when attempting to copy boot files.

Решение

  1. создать надлежащий UEFI-загрузочный USB-накопитель (например, с Rufus, как описано здесь), а затем
  2. переключить BIOS из "унаследованного" режима загрузки обратно в режим загрузки UEFI, а затем
  3. загрузка с USB-накопителя

Процесс ремонта, начатый оттуда, был успешным в моем случае: BCDBoot C:\Windows затем удалось с Boot files successfully created.

Первоначальной проблемой было "Код ошибки: 0xc0000034 - в файле данных конфигурации загрузки отсутствует необходимая информация" в Windows 8, как обсуждалось здесь.

У меня была другая причина и решение этой проблемы. В моем случае проблема заключалась в том, что я использовал Windows 7 Enterprise ISO для создания загрузочной USB-флешки с Unetbootin, следуя инструкциям здесь: http://www.webupd8.org/2010/10/create-bootable-windows-7-usb-drive.html. По сути, в инструкциях говорится, что нужно отформатировать USB-накопитель с помощью ntfs и использовать Unetbootin v494 (устаревший), у которого все еще была функция, позволяющая использовать накопители, отформатированные с помощью ntfs (эта возможность исчезла в более поздних версиях).

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

После часа поиска по форуму кто-то где-то упомянул: "Не используйте загрузочный USB-накопитель, поскольку среда восстановления увидит эту таблицу разделов, а не реальную на жестком диске" или что-то в этом роде.

Нашел мой привод USB CD-ROM, вставил туда реальный диск и запустил bootrec /fixmbr, bootrec /fixboot, а также bootrec /rebuildbcd без проблем. Затем Windows запустилась нормально, как из grub, так и после выбора дополнительного жесткого диска из списка загрузки BIOS.

The requested system device cannot be found.

У меня было то же сообщение об ошибке, когда я пытался восстановить Windows после преобразования моего жесткого диска из MBR в GPT. Когда я попробовал автоматическое восстановление, Windows даже сообщила, что установленная версия не была совместимой версией Windows. Я обнаружил, что в BIOS MSI есть два варианта загрузки с DVD-ROM, которые выглядят примерно так:

SATA3:DVD Drive
UEFI:DVD Drive

Запуск UEFI начнется только тогда, когда я выберу его вручную. В противном случае он все равно будет загружаться с DVD-диска, но не в режиме UEFI. После того, как я выбрал UEFI, я мог как вручную, так и автоматически восстанавливать свою систему Windows 7.

Теперь я полностью отключил загрузку с CD / DVD, заставив меня использовать загрузочное меню BIOS и выбрать способ загрузки.

В моем случае я получил незагружающуюся систему Windows 10 (метод загрузки BIOS) после клонирования разделов (посекторное копирование) на новый диск. Система по-прежнему могла загружаться со старым установленным диском, но установка загружалась со старого диска, а не с нового, поэтому она явно ссылалась на старый диск по имени, модели или чему-то в этом роде.

Обычно подобную проблему можно решить, загрузившись с установочного носителя и запустивbootrec /rebuildbcd- но в этом случае сообщение об ошибкеThe requested system device cannot be found.появилось, когда bootrec попытался добавить новую систему в BCD. Такжеbcdeditзавершился с аналогичным сообщением об ошибке. BCD вC:\BOOT\BCDсуществовал (указывая на старый диск), но, очевидно, Windows не идентифицировала этот файл как активныйBCD. Выпускbcdedit /store C:\boot\bcdдействительно смог внести в список BCD.

В итоге я переименовал папку вC:\boot.oldи пытаюсьbcdboot e:\windows /s c:. Эта команда существовала без ошибок, но не создавалась заново C:\boot, хотя пункт назначения был однозначно указан в командной строке. Оказывается, что BIOS на этом компьютере, похоже, поддерживает некоторый базовый уровень загрузки EFI и загрузил носитель восстановления Windows 10 в режиме EFI (без каких-либо указаний на выполнение чего-то подобного в меню выбора загрузочного носителя или какой-либо возможности включить EFI или устаревшая загрузка (вкл. или выкл.). Окончательно

      bcdboot e:\windows /s c: /f BIOS

сделал свое дело. Windows загрузилась без каких-либо проблем или сбоев с нового жесткого диска (и старый, и новый диски были классическими дисками SATA, подключенными к одному и тому же порту SATA).

В таких ситуациях я обнаружил, что EasyBCD действительно очень полезен. Я предлагаю вам сделать это и посмотреть, может ли это вас спасти.

Надеюсь, что это помогает чувак. Ура!

Загрузите установочный диск Windows 7 x64 и запустите восстановление при загрузке, но отмените его до того, как оно начнет пытаться восстановить, вы увидите ссылку для расширенных параметров, которая позволит вам получить доступ к командной строке, вам потребуется создать раздел размером 100 МБ. активен, если вы сделали раздел ОС активным по ошибке.

  1. Вставьте установочный диск Windows 7 x64 в дисковод и запустите компьютер.
  2. Нажмите клавишу, когда вам будет предложено.
  3. Выберите язык, время, валюту, клавиатуру или способ ввода и нажмите кнопку Далее.
  4. Нажмите Восстановить ваш компьютер.
  5. Выберите операционную систему, которую вы хотите восстановить, и нажмите кнопку Далее.
  6. В диалоговом окне "Параметры восстановления системы" нажмите "Командная строка".

    diskpart выберите диск 0 выберите часть 1 активна

Перезагрузитесь и загрузитесь обратно на установочный диск Windows 7 x64.

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

http://support.microsoft.com/kb/927392

В моем случае ни одно из вышеприведенных решений не помогло.

Перезагрузка виртуальной машины Windows Server 2016 в VMware Esxi 6.5 завершилась неудачно с сообщением "ОС не найдена". Я подозревал, что обновление было установлено во время выключения. Я не смог исправить это с помощью diskpart, bootrec, bcdedit и восстановления из резервной копии. Это также не имело ничего общего с режимом EFI (безопасная загрузка) или BIOS.

Решением было изменение Systemdrive (назад) на SCSI Device 0:0 .

Дополнительный диск, который я добавил за несколько недель до этого, имел SCSI Device 0: 0, а Systemdrive был 0:1. Как это могло произойти, я не знаю, но я подозреваю, что ошибка в Vsphere Web-Client.

Другие вопросы по тегам