Какова эквивалентная команда для bcdboot в bcdedit?

Создание новой загрузочной записи для Windows 7/8 (для двойной загрузки), по-видимому, может быть сделано очень легко с bcdboot, Например (см. Здесь):

bcdboot D:\windows

Теперь, читая форумы, я нахожу людей, использующих bcdedit для более сложной загрузки, такой как загрузка с VHD и тому подобное.

Таким образом, я предполагаю, что есть эквивалентные команды в bcdedit за bcdboot D:\windows, но я не уверен, какой. Зная что bcdboot делает с точки зрения bcdedit несомненно, поможет мне понять bcdedit лучше.

4 ответа

Решение

Прошло уже несколько лет, и даже сейчас с Windows 10 программа BCDEDIT остается такой же загадочной, как и раньше. Чуть больше года назад мне пришлось нелегко узнать о BCDEDIT, и у меня не было ни малейшего представления, как BCDEDIT или BCDBOOT должны были работать. Чтобы ответить на ваш вопрос, если BCDBOOT можно использовать для создания шаблона для создания загрузочной записи Windows в BCD, то BCDEDIT, вероятно, может сделать то же самое с гораздо большим количеством команд и набором текста, как показано ниже:-

C:\>bcdedit /create /application OSLOADER The entry {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} was successfully created.

Если вы проверите внутри своего BCD, чтобы найти тот конкретный {ID}, который был создан, то вы увидите следующее:-

C:\>bcdedit /enum {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} Windows Boot Loader identifier {43083ab0-6bcd-11e8-a9c7-9cb70d586adc}

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

C:\>bcdedit /enum {current} Windows Boot Loader identifier {current} device boot path \WINDOWS\system32\winload.exe description Windows 10 Pro 64-bit locale en-US inherit {bootloadersettings} recoverysequence {d3150567-fac9-11e7-a6a0-d6a823273fc8} displaymessageoverride Recovery recoveryenabled Yes allowedinmemorysettings 0x15000075 osdevice boot systemroot \WINDOWS resumeobject {fbe9c9e8-fa42-11e7-a9a1-9cb70d586adc} nx OptIn bootmenupolicy Legacy

Таким образом, в этом случае вы сталкиваетесь с необходимостью набора текста, так как я думаю, что как минимум ваша запись загрузчика Windows должна иметь "идентификатор", "устройство", "путь", "описание" "osdevice". "и" systemroot ". Поэтому теперь вам нужно будет напечатать что-то вроде следующего:-

C:\>bcdedit /set {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} device <whichever partition this particular Windows installation is located> C:\>bcdedit /set {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} path <wherever the WINLOAD.EXE file for this particular Windows installation is located in> C:\>bcdedit /set {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} description "<give a name here, if you use spaces then the entire phrase must be enclosed in quotes>" C:\>bcdedit /set {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} osdevice <whichever partition this particular Windows installation is located> C:\>bcdedit /set {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} systemroot <whichever folder the particular Windows installation is located in>

Наконец, вам нужно изменить запись {bootmgr}, чтобы разрешить выбор операционных систем, введя следующие команды:-

C:\>bcdedit /set {bootmgr} timeout 5 C:\>bcdedit /set {bootmgr} displaybootmenu Yes C:\>bcdedit /displayorder {43083ab0-6bcd-11e8-a9c7-9cb70d586adc} /addlast

Больше информации здесь:-

Добавление загрузочных записей | Документы Microsoft

Продолжая то, что я сказал в комментарии, оба bcdboot а также bcdedit немного разные инструменты. Они не используются для тех же целей и, поскольку они зависят только от содержимого, сохраненного в BCD (данные конфигурации загрузки), они независимы.

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

Это делается путем копирования некоторых файлов, которые существуют в /Windows каталог в определенное место и обновление основной загрузочной записи, чтобы он указывал на загрузчик.

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

Хорошим примером этого является двойная загрузка Windows XP и 7. Поскольку XP не имеет файлов BCD, bcdboot не будет работать над этим. Это может также быть не распознано загрузчиками последних систем с коробки.

bcdedit это довольно здоровенный инструмент, поэтому некоторые люди создали инструменты для редактирования данных BCD из Windows. Одним из них является EasyBCD, который позволяет вам вручную просматривать и редактировать конфигурацию BCD и легко добавлять новые разделы. На данный момент бесплатная версия вполне соответствует потребностям большинства пользователей.

Они также составили руководство по восстановлению загрузчика на основе BCD с установочного диска Windows, что является одной из причин, по которым я упоминаю этот продукт. Если вы читаете это, есть один метод (ядерный холокост), который можно использовать с bcdedit для того, чтобы восстановить загрузчик. bcdedit только записывает правильные записи в загрузчик, так что вы действительно можете загрузить свои системы.

Спасибо @Turkey. Я попытался следовать инструкциям и немного поискал, чтобы получить всю необходимую информацию, и успешно сделал новую загрузочную запись.

      bcdedit /create /application osloader

У меня был идентификатор {a93a2702-2134-11ed-8dca-60f262a3ce32}. Я предполагал, что буду использовать ту же запись, что и обычную запись Windows.

Это то, что сработало для меня

      bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} device partition=C:
bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} path \Windows\system32\winload.efi
bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} description "Windows 10 but self-made"
bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} osdevice partition=C:
bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} systemroot \Windows
bcdedit /set {a93a2702-2134-11ed-8dca-60f262a3ce32} detecthal yes
bcdedit /displayorder {a93a2702-2134-11ed-8dca-60f262a3ce32} /addlast

BCDedit - более мощная программа, чем bcdboot в CMD. Вы должны использовать BCDedit только в случае крайней необходимости, когда ваш windows1 не запускается после установки другого windows2(и наоборот), так как он может сделать для вашей системы загрузки намного больше, чем команда BCDboot. Хотя, если вы устанавливаете Windows 8 с любыми окнами (в любом порядке, но лучше сначала установить Windows 8, чем другие окна, которые вы хотите, лучше), если на вашей wwindows 8 установлена ​​ОС по умолчанию для загрузки, пока вы не сделаете выбор, чем Windows 8 предоставляет меню для загрузки других окон (может быть больше 1), присутствующих на вашем жестком диске. Таким образом, у вас не возникнет проблем с двойной загрузкой ПК с двумя окнами.

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