Как определить, загружается ли установщик Windows в EFI или BIOS?

21

У меня Windows 7 64-битная установка USB. Я хочу знать, загрузился ли установщик Windows 7 в режим EFI или BIOS.

Я погуглил и нашел решение здесь http://forums.bit-tech.net/showthread.php?t=209045, но оно не работает, поскольку блокнот не может найти \ Windows \ Panther \ setupact.log.

Дуонг Тханг
источник
В какой момент вы вводите командную строку? Я думаю, что вы должны установить его в первую очередь. Я думаю, что экран приветствия, о котором говорится в сообщении на форуме, на которое вы ссылаетесь, фактически является экраном, который вы видите после завершения установки. Это этап приветствия Windows, как его называет Microsoft. См. Эту ссылку: support.microsoft.com/kb/927521
Самир
В этом есть смысл. Я ввожу команду до завершения установки. Так есть ли другой способ идентифицировать загрузку EFI или BIOS?
Дуонг Тханг
1
Вам не нужно устанавливать его в первую очередь. Я ошибался. Они относятся к экрану приветствия установки, а не к так называемому OOBE (из коробки). Таким образом, вы должны ввести командную строку перед началом процесса установки! Я сожалею о том, что. В противном случае вы тратите время на установку, не зная, получится ли установка так, как вы этого хотите, или нет.
Самир
Различные другие методы: youtube.com/watch?v=RZKEJ1zljmk
Нехал Дж. Вани
Одной из альтернатив является принудительное включение режима. На большинстве машин нажатие на что-то вроде F12вызывает меню загрузки, из которого вы можете выбрать, хотите ли вы загружаться с использованием UEFI или «legacy». Вы должны увидеть меню , как это: eightforums.com/attachments/installation-setup/...
aalaap

Ответы:

19

Теперь я перейду к поиску и покажу, как найти этот файл журнала.

Я сделал это с помощью DVD-диска с Windows Vista, как раз для демонстрации этого. Но это должно быть так же, даже если вы загружаетесь с флэш-накопителя USB или используете Windows 7.

При загрузке с DVD-диска или USB-диска Windows вы сначала увидите диалоговое окно, в котором вы выбираете язык и раскладку клавиатуры. Сделайте этот шаг и нажмите Далее .

Затем нажмите кнопку Установить сейчас .

Когда вы попадаете на экран, где запрашивает ключ продукта, нажмите Shift+, F10чтобы перейти к командной строке.

Ваш маркер должен быть X:\Sources>сейчас.

как искать во всех каталогах Windows файлы журналов

Чтобы просмотреть папки для файлов журнала, вы можете набрать dir ..\*.log /s

как открыть файл журнала в блокноте из командной строки

Файл, который вы ищете, называется setupact.log. Вы видите это в результатах? Это должно быть расположено в X:\Windows\panther.

Чтобы открыть этот файл в блокноте без изменения каталога, вы можете набрать notepad ..\windows\panther\setupact.log

Если там есть файл, каким он и должен быть, он откроется в Блокноте. Теперь, находясь в Блокноте, нажмите Ctrl+, Fвведите обратный вызов и нажмите Enter.

Вы должны увидеть несколько записей с этим словом, но тот, который вас интересует, называется Callback_BootEnvironmentDetect. Нажмите Enterнесколько раз, пока не заметите.

как найти слово "обратный звонок" в журнале в блокноте

В моем случае это говорит Callback_BootEnvironmentDetect:FirmwareType 1.

Я думаю, это потому, что это в Windows Vista, и так как это система BIOS, я предполагаю, что Тип 1 означает BIOS. Так что, если вы сделаете то же самое с Vista в системе UEFI, скорее всего, это будет тип 2. Для Windows 7 те же строки, вероятно, просто скажут UEFI или BIOS.

Короче...

Виндоус виста:

Callback_BootEnvironmentDetect:FirmwareType 1 значит биос

Callback_BootEnvironmentDetect:FirmwareType 2 означает UEFI

Windows 7:

Code:Callback_BootEnvironmentDetect: Detected boot environment: BIOS

Code:Callback_BootEnvironmentDetect: Detected boot environment: UEFI

Вы также можете ознакомиться со статьей TechNet о том, как развернуть Windows 7 на компьютерах на основе UEFI.

Возможно, вы заметили, что большинство людей используют EFI и UEFI взаимозаменяемо, но UEFI - это более поздняя разработка, а EFI - старая. Если я не ошибаюсь, это означает универсальный расширяемый интерфейс прошивки. Только не смущайтесь этим, это обычно означает то же самое. В руководстве к материнской плате может быть написано EFI или UEFI, и вам нужно включить его.

Samir
источник
2
Спасибо. \Windows\Panther, не знал, что такой зверь прячется в моем компьютере. В качестве альтернативы использованию Блокнота можно использовать доверенный старый FINDSTRиз командной строки:findstr Callback_BootEnvironmentDetect \Windows\Panther\setupact.log
Lumi
хорошо поставленный, выверенный ответ. +1
Элиран Малка
1
Это не сработало для меня. Файл журнала присутствовал, но не содержал никаких Callback_BootEnvironmentDetectсообщений. Решение @ EliranMalka bcdeditсработало. Использование Windows 7 Ultimate x64.
15:28
Работает на установщике Windows 10
Брайан Лоу
Обязательно проверьте дату записи в журнале (самая актуальная внизу файла). Мой перестал обновляться 18 месяцев назад. Мой Win 7 изначально был установлен для режима BIOS, но я обновил его до EFI и теперь могу загружаться в любом случае.
Пользователь5910
18

Откройте командную строку (как администратор) и запустите:

bcdedit /enum

Это перечислит настройки BCD, вы получите вывод, похожий на этот:

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {3c6390c7-c6ce-11e1-8e2f-c6d882f2969a}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {3c6390cb-c6ce-11e1-8e2f-c6d882f2969a}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {3c6390c7-c6ce-11e1-8e2f-c6d882f2969a}
nx                      OptIn

Пройдите по списку и поищите Windows Boot Loader. Если ваша система загружается в режиме EFI, pathзначение будет \Windows\system32\winload.efi(обратите внимание на .efiрасширение - в .exeпротивном случае оно вернется ).

Источник

http://www.uefi.org/events/UEFI-Plugfest-WindowsBootEnvironment.pdf

Элиран Малка
источник
1
Это единственный метод, который работает, если вы вручную мигрировали в UEFI, а не установлены изначально.
Сэм Грэм
1

ПРИМЕЧАНИЕ: комментарий ниже касается уже установленной системы, а не самого установщика Windows:

Панель управления Launch - Администрирование - Управление компьютером

Проверьте вкладку «Управление дисками». У вас должен быть зашифрованный раздел EFI (около 100 Мб). Кроме того, когда вы щелкнете правой кнопкой мыши по своему жесткому диску, на вкладке Тома вы увидите разделение GPT (а не устаревшую MBR).

GPT является частью пакета UEFI :)

i3laze
источник
Привет и добро пожаловать в Super User! Пожалуйста, прочтите руководство « Как ответить на вопрос» . Этот сайт является сайтом вопросов и ответов, а не форумом.
ОДС
Не совсем правильно. Система может быть загружена с использованием модуля поддержки совместимости, где операционная система установлена ​​на жестком диске с таблицей разделов GPT. Таким образом, нет, одного присутствия таблицы разделов GPT или раздела EFI недостаточно.
Нехал Дж. Вани,
0

Предложенный Microsoft метод состоит в том, чтобы сделать простой запрос реестра. В командной строке запустите эту команду

reg.exe query HKLM\System\CurrentControlSet\Control /v PEFirmwareType

Если возвращаемое значение равно 1 или 0x1, то ваш компьютер работает в режиме BIOS. Если возвращаемое значение равно 2 или 0x2, то ваш компьютер работает в режиме UEFI.

https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/boot-to-uefi-mode-or-legacy-bios-mode

Собачья шерсть
источник