Как использовать BCDEdit для двойной загрузки Windows?

29

Какие bcdeditкоманды необходимы для настройки двойной загрузки между различными установками Windows? 5

Задний план

Я недавно установил Windows 8 на отдельный жесткий диск 1 . Теперь, когда установлена ​​Windows 8, я хочу выполнить двойную загрузку обратно в Windows 7.

У меня есть два 2 жестких диска:

Скриншот менеджера разделов Windows

Итак, вы можете видеть, что у меня есть два моих диска с разделами, содержащими Windows:

  • Windows 7 : \\PhysicalDisk0(раздел 0 3 )
  • Windows 8 : \\PhysicalDisk2(раздел 1)

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

Запустив bcdeditсейчас, он показывает текущую конфигурацию:

C:\WINDOWS\system32>bcdedit

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
integrityservices       Enable
default                 {current}
resumeobject            {ce153eb7-3786-11e2-87c0-e740e123299f}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \WINDOWS\system32\winload.exe
description             Windows 8
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {ce153eb9-3786-11e2-87c0-e740e123299f}
integrityservices       Enable
recoveryenabled         Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \WINDOWS
resumeobject            {ce153eb7-3786-11e2-87c0-e740e123299f}
nx                      OptIn
bootmenupolicy          Standard
hypervisorlaunchtype    Auto

Я не могу найти никакой документации о разнице между Windows Boot Manager и Windows Boot Loader .

Документация

Есть некоторая документация по Bcdedit:

Но они не объясняют, как редактировать двоичные данные конфигурации загрузки.

Если бы мне пришлось угадывать , я бы подумал, что диспетчер загрузки Windows указывает BIOS, какую программу он должен запускать. Эта программа предоставит пользователю набор вариантов загрузки. Таким образом, Windows Boot Loader будет определенным выбором при загрузке , который представляет собой конкретную установку Windows.

Если это так, мне нужно создать новую запись загрузчика Windows .

Это означает, что я мог бы хотеть использовать /createпараметр:

/Создайте

Создает новую загрузочную запись:

bcdedit [/ store filename ] / create [ id ] / d description [/ application app | / наследовать [ тип приложения ] | / наследовать УСТРОЙСТВО | / устройство ]

Итак, я предполагаю синтаксис:

>bcdedit /create /d "The old Windows 7" /application osloader

Где applicationможет быть один из следующих типов:

Apptype     Description
BOOTSECTOR  The boot sector application
OSLOADER    The Windows boot loader
RESUME      A resume application

К сожалению, единственная документация, о которой osloaderидет речь, это «Загрузчик Windows» . Я не понимаю, как это можно различить между Windows 8 на одном жестком диске и Windows 7 на другом.

Другой возможный параметр, когда /createзагрузчик

>bcdedit /create /D "Windows Vista" /device "The Quick Brown Fox"

К сожалению, документация отсутствует для /device:

/ устройство

Необязательный. Если для идентификатора не установлен общеизвестный идентификатор, этот параметр используется для указания новой загрузочной записи в качестве дополнительной записи параметров устройства.

Поскольку я не установил idизвестный идентификатор, я должен установить / device на «параметр, который используется для указания новой загрузочной записи в качестве дополнительной записи параметров устройства» . Я знаю все эти слова; они все англичане. Но я понятия не имею, что он говорит; эти слова в таком порядке кажутся бессмысленными.

Так что я немного в тупике. Я не хочу быть похожим на Дэна Столтса из Microsoft, который уничтожил свои жесткие диски, пытаясь использовать BCDEdit :

Я не нашел никакого контента, который был бы особенно полезен, когда я использовал свою машину, играя с BCDEdit. Это сообщение было бы хорошо , если там было гораздо больше деталей , особенно на / набор команд OSDevice и т.д. Так что, как только я получил мою машину фиксирована, я задокументировал решение и информация здесь ... .

Я имею в виду, если парень из Microsoft не может даже понять, как использовать BCDEdit для редактирования своего BCD, то какой у меня шанс?

Бонус Чтение

Сноски

  • 1 Поскольку установщик Windows 8 мог повредить мою установку Windows 7, я решил отключить мой «основной» жесткий диск во время установки. Это длинное объяснение того, почему установщик Windows 8 не обнаружил существующую установку Windows 7. Обычно установщик автоматически создает необходимые записи для двойной загрузки. Не то, чтобы причина , по которой я задаю вопрос, важна.
  • 2 На самом деле есть три диска, но третий - это просто хранилище. Наличие третьего жесткого диска не имеет отношения к вопросу. Я упоминаю об этом только в том случае, если кто-то хочет знать, почему на скриншоте 3 жестких диска, а я упоминаю только два.
  • 3 Я произвольно начал нумерацию разделов с «нуля» ; не подразумевать, что разделы нумеруются начиная с нуля. Я упоминаю только разделы, потому что я не вижу, как какой-либо загрузчик мог бы выполнять свою работу, не зная, в каком разделе и в какой папке находится установка Windows.
  • 4 Я спрашиваю о BCDEdit. Я попробовал Visual BCD Editor . Кажется, это визуальный редактор BCD. То есть это графический интерфейс, но он использует ту же терминологию, что и BCDEdit, и требует тех же знаний, которые BCD не документирует.
  • 5 Для простоты предположим, что все установки Windows, между которыми я хочу выполнить двойную загрузку, - это Windows Vista или более поздняя версия, что делает их совместимыми с BCDEdit и двоичным загрузчиком. Альтернатива потребует углубления в тонкости старого ntloader. Я также не спрашиваю о двойной загрузке Linux; или как загрузить образ виртуального жесткого диска (VHD). Просто современные версии Windows на существующих жестких дисках на одной машине.
Ян Бойд
источник

Ответы:

16

Это не прямой ответ на вопрос перед «Фоном», но указывает на альтернативное решение для создания загрузочных записей для загрузки двух (и более) ОС Windows Vista и более поздних версий. Пожалуйста, смотрите также мой второй ответ ниже о критике терминологии, используемой в Visual BCD.

Нет проводников, устройств, предметов, элементов и тому подобное.

Мой фон (пропустите, если не интересно, и перейдите к решению ниже):

Я реализовал Visual BCD Editor.

Во время процесса реализации мне пришлось читать все доступные источники по интерфейсу bcdedit и WCD BCD Provider (программный интерфейс, может использоваться с C ++, C #). Документация от Microsoft действительно плохая.

В BCD есть объекты (загрузчики, настройки, элементы устройства). Нет документации о связях между объектами, несмотря на наличие зависимостей.

В Windows 7 имеется более 140 (!) Элементов (свойств) объектов BCD. Я не знаю значения некоторых элементов - документации просто нет.

В Windows 8 появились новые элементы - я думаю, общее количество сейчас приближается к 180 (!!). Нет документации.

С другой стороны, есть две очень мощные утилиты для управления BCD: bcdboot и reagentc.

bcdboot - создает / исправляет загрузчик по умолчанию, а также BCD и загрузочную среду в целом!

reagentc - устанавливает / удаляет среду восстановления (winre.wim)

Оба инструмента также не очень хорошо документированы.

Альтернативное решение:

Практически нет необходимости в bcdedit, так как с помощью только bcdboot вы можете создавать загрузчики для Windows Vista и более поздних ОС Windows - вы создаете загрузчик для самой ранней ОС, чем для самой последней, и вуаля вы создали среду загрузки для двойной / мультизагрузочной системы:

Предполагая, что вы находитесь в Windows 8:

1. bcdboot f: \ windows (это соответствует Windows 7, как на картинке)

2. bcdboot c: \ windows (это сопоставляется с Windows 8)

Выполнено !

Базовое правило Microsoft для процесса загрузки: среда загрузки (и BCD) всегда должна быть на [первый диск + активный раздел]. (на рисунке - Диск 2 => Первый диск в последовательности загрузки BIOS!)

Наконец, что не менее важно, есть утилита bootsect для записи MBR и PBR (основной записи и загрузочной записи раздела) - теперь стандартная в Windows 8 (ранее была доступна только в WinRE).

Таким образом, используя только bootsect и bcdboot, можно создать / исправить все загрузочные сущности для системы с двойной загрузкой.

Я думаю, что процесс загрузки для Vista и более поздних версий очень хорошо описан на многих интернет-сайтах, даже на Microsoft.com.

Заметка:

Одним из лучших сайтов о Windows BCD является сайт Джеффа Чаппелла - там более подробная информация, чем на сайте Microsoft.com. Заинтересованные пользователи могут найти там довольно полезную информацию и некоторые критические замечания по документации bcdedit.

snayob
источник
9

Когда я отформатировал диск C: для переустановки Windows, основная загрузочная запись была удалена, и установщик Windows 7 не смог ее восстановить. Я мог бы использовать инструмент bcdedit с графическим интерфейсом, такой как Visual BCD Edit, но зачем мне что-то устанавливать, когда в консольной программе bcdedit должна быть простая команда, которая может выполнить эту работу? После долгих поисков в файлах онлайн-справки я отказался от bcdedit и нашел здесь ответ, утопающий в отступлениях. Чтобы создать загрузочную запись для второго раздела, вы должны использовать bcdboot

Предполагая, что вы находитесь в C: \ Windows:

1. bcdboot e: \ windows

2. bcdboot c: \ windows

После перезагрузки вам будет представлено меню загрузки Windows с двумя записями для Windows 7. Если вы выберете запись, которая загружается в C: \ Windows, вы можете переименовать запись для этого раздела с помощью:

bcdedit / set {current} description "Windows 7 (Partition 1)"

Это делает ОС, загруженную при запуске, стандартной записью в меню загрузки:

bcdedit / default {current}

Это помещает ОС по умолчанию при запуске первого пункта в меню загрузки

bcdedit / displayorder {по умолчанию} / addfirst

Или вы можете сделать ОС при запуске первым пунктом в меню загрузки:

bcdedit / dispalyorder {текущий} / addfirst

Теперь перезагрузите компьютер и выберите второй пункт в меню загрузки, который должен быть помечен как «Windows 7». После загрузки в E: \ Windows переименуйте ОС, загруженную при запуске:

bcdedit / set {current} description "Windows 7 (Partition 2)"

Проверьте, что загрузочное меню работает нормально, и сохраните данные bcd в раздел, на котором не установлена ​​ОС:

bcdedit / export D: \ Saved_BCD_Settings \ SavedBCD

Если вы запутались позже, вы можете восстановить загрузочное меню bcd:

bcdedit / import D: \ Saved_BCD_Settings \ SavedBCD

Motorcycleboy
источник
Мой Мотоцикл, вы просто повторяете мой ответ, данный несколько месяцев назад. -1.
snayob
@snayob, я ценю ваши ответы (+1), но Motorcycleboy немного подробнее расскажет о командах после того, как один из них создаст загрузочный диск. Теперь то , что не хватает во всей этой дискуссии является то , что эквивалентная команда в bcdeditдля bcdboot e:\windows(см здесь для вопроса)
Давор Йосипович
Я не думаю, что есть эквивалент команд bcdedit для "bcdboot e: \ windows", поскольку bcdboot копирует и восстанавливает всю загрузочную среду (bootmgr + \ boot folder + repair BCD + добавляет запись для указанной ОС)
snayob
{current}не работает.
Восток
5

Некоторые замечания по поводу критики в оригинальном вопросе об использовании той же терминологии в Visual BCD, что и Microsoft, используемая для bcdedit.

Концепция BCD разработана Microsoft. Это идет со своей собственной терминологией. Я не думаю, что смогу это изменить. Я могу только продлить это.

Microsoft предоставила два способа доступа / редактирования BCD:

  1. используя bcdedit.exe - интерфейс командной строки
  2. Интерфейс BCD WMI Provider - программный интерфейс

Оба интерфейса говорят об объектах и ​​элементах BCD. Это общая концепция, используемая также в программировании / компьютерах, как и в других областях. Мы могли бы пойти даже к философии, которая использует терминологию объектов, свойств и отношений для описания мира и вселенной.

Доступ поставщика BCD WMI является более гибким, поскольку он дает программисту возможность получить доступ к каждому объекту и элементу в BCD и свободно работать с ними.

Visual BCD полностью использует интерфейс поставщика BCD WMI и реализует доступ так же, как мы используем для доступа к реестру Windows с помощью regedit.exe. Более того, инструмент автоматизирует две основные задачи - создание загрузчиков и восстановление двойной загрузки . Никакой другой инструмент не предлагает такую ​​автоматическую функциональность в один клик . Я бы сказал, что это новая терминология и новый уровень абстракции . Я бы не стал менять базу, созданную Microsoft, я могу только опираться на нее.

Начинающие пользователи просто нажимают кнопку, и выполняется сложная операция! Нет фона не требуется! Вам даже не нужно знать, сколько версий Windows вы установили - инструмент пытается найти их все и затем создать загрузчики для них, если соответствующие загрузчики еще не представлены в BCD - используемая терминология - «Создать отсутствующие загрузчики Windows» - I думаю, что все, кто говорит по-английски, могут понять / щелкнуть / подтвердить такую ​​операцию, или я ошибаюсь?

Сложность объектов и элементов в BCD естественна, так как эта концепция охватывает загрузку более новых и старых ОС Windows, а также иностранных ОС, таких как Linux, Unix и т. Д. Кроме того, это общая концепция для загрузки MBR и загрузки EFI на различных устройствах.

Наиболее сложной частью BCD является концепция устройства . У вас есть раздел устройства, диск ramdisk, файловое устройство, найти устройство - вы должны потратить некоторое время на его понимание, и я не думаю, что это для обычного пользователя Windows. Форумы полны вопросов о разделах диска, что является гораздо менее сложной темой. Например, многие пользователи Windows даже не знают о разнице между основным и логическим разделами. Вы должны знать о разделах, если вы хотите двойной / мультизагрузки. Вы должны купить землю, если хотите построить второй дом.

Концепция BCD та же, что и в Vista - в Windows 7/8 определены только новые элементы.

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

Программист / разработчик должен создать более удобный интерфейс. Я начал с предоставления того же интерфейса - графического интерфейса, эквивалентного bcdedit, - позже интерфейс можно абстрагировать на более высоком уровне в зависимости от моделей использования. Структурированное представление BCD уже реализовано. Это базовый уровень абстракции.

Следующим уровнем абстракции будет концентрация на отношениях между объектами, поскольку эта тема не рассматривается Microsoft. Задача не из легких. Новая терминология приходит с абстракцией.

snayob
источник
Я понимаю, что BCD оборачивает очень мощную систему с множеством сложных опций. С другой стороны, я думаю, что у меня есть очень простой вопрос, который многие люди задавали на протяжении многих лет, но так и не смогли его решить. «У меня есть Windowsздесь, и еще один Windowsтам. Как я могу загрузиться между ними?». Вместо полного руководства по всем параметрам BCDEdit я надеялся на команды, которые могут решить только эту (на первый взгляд простую) проблему. Возможно, что-то простое msconfig, за исключением того, что он позволяет вам перейти к другой установке Windows, и он добавит ее для вас.
Ян Бойд
Я должен сказать, что ваш инструмент намного мощнее, чем EasyBCD.
Milind R
3

Вам нужна BCDEdit /setкоманда для настройки загрузочного тома. Затем добавьте запись в меню операционной системы Windows Boot Manager, вызвав BCDEdit /displayorderкоманду.

bcdedit / set {ntldr} загрузка устройства

Он идентифицирует раздел другой ОС или следующую команду, а также

bcdedit / set {ntldr} раздел устройства = C:

Следующая строка делает запись загрузочной, добавляя ее в меню

bcdedit / displayorder {ntldr} / addlast

Чтобы убедиться, что новая запись появится в меню загрузки, выполните команду bcdedit /enum ACTIVEи найдите запись загрузчика устаревшей ОС Windows.

Примечание : /createкоманда используется для добавления операционной системы не Microsoft в запись загрузчика.

Для получения дополнительной информации об этом вы можете прочитать эту статью источника


Относительно вашего вопроса о " Разнице между загрузчиком Windows и менеджером загрузки "

Из википедии

Процесс запуска Windows NT начинается, когда компьютер находит загрузчик Windows, часть операционной системы Windows, которая отвечает за поиск Microsoft Windows и ее запуск. В системах IA-32 или x64 загрузчик называется Windows Boot Manager (BOOTMGR). До Windows Vista, однако, загрузчик был NTLDR.

Смотрите также на Technet .


Visual BCD Editor - это расширенная версия графического интерфейса утилиты Windows bcdedit.

Это первый инструмент с графическим интерфейсом, который реализует полное редактирование хранилища данных конфигурации загрузки Windows 7 / Vista (BCD).

Страница загрузки для визуального редактора BCD.

Попробуйте исправить вариант в инструменте.

avirk
источник
О диспетчере загрузки Windows : Диспетчер загрузки Windows - это, по сути, мини-операционная система, которая контролирует процесс загрузки и позволяет выбирать, какое загрузочное приложение запускать. Существуют различные загрузочные приложения (например, Windows Boot Loader), и каждое из них делает что-то свое. Например, приложение Windows Boot Loader загружает Windows. [...] Например, если на разных разделах установлены две разные версии Win7, вы увидите две записи загрузчика Windows. (взято отсюда )
Давор Йосипович
3

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

Быстрый BCD фон, если он новый

BCD - это загрузочная конфигурация Windows. Он содержит многочисленные разделы, каждый из которых идентифицируется именем (называемым «описанием») и идентификатором, который выглядит примерно так: «{0743bb44-fda6-11e3-90c8-e3ee27f3aec6}».

Существует несколько «общеизвестных идентификаторов», и bcdedit будет полезно использовать их вместо этого, где это возможно (если только вы не используете опцию /v (verbose) с /enum). Они выглядят так: "{bootmgr}", "{memdiag}". Это просто сокращенные имена для полных идентификаторов, но с ними проще работать. Вы можете использовать либо.

Вы можете перечислить эти разделы с помощью следующей команды ( «все» не является обязательным , но без него вы не увидите полный список): bcdedit /enum all.

Типичный вывод:

C:\Windows\system32>bcdedit /enum all

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {92b1a1b0-c023-11e3-b3f1-ec4d94108574}
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        {92b1a1b2-c023-11e3-b3f1-ec4d94108574}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {92b1a1b0-c023-11e3-b3f1-ec4d94108574}
nx                      OptIn

Точно так же, для простоты, когда он идентифицирует устройства, он будет использовать подобный формат \Device\HarddiskVolume2, но распознает раздел по его букве («C:»), если он назначен.

Список, созданный командой, /enum allначинается с дополнительного раздела менеджера загрузки прошивки (если на вашей материнской плате установлен EFI). Его сокращенное имя "{fwbootmgr}" . Он управляет первоначальным выбором загрузки EFI (будь то использование обычного менеджера загрузки Windows или определенных устройств). Как правило, вы можете игнорировать {fwbootmgr}, если присутствует.

Ниже это «Диспетчер загрузки Windows» (идентификатор «{bootmgr}» ). Это тот, с которым вы будете работать. Он содержит конфигурацию для основного меню или чего-либо еще, что вы получаете при запуске (если Windows Boot Manager работает и может найти BCD в первую очередь).

Ниже {bootmgr} указано любое количество разделов «Загрузчик Windows» и, возможно, других разделов, каждый из которых управляет одним действием или параметром загрузки.

Настройка двойной загрузки с использованием bcdedit (больше ничего не нужно)

Для двойной загрузки вы указываете bcdedit /copyсуществующей известной записи загрузчика Windows для вашей первой ОС.

  • /copy скопировать существующую запись
  • {current}является идентификатором записи, которую вы хотите скопировать. Это ярлык для текущего загрузочного элемента. Если вы не хотите использовать двойную загрузку, используйте правильный идентификатор для того, который вам нужен. Текст описания для каждой записи поможет найти тот, который вы хотите.
  • /d "Description for copied entry будет описание нового элемента

Он создаст копию этой записи, даст ей указанное описание и ответит новым идентификатором, который дал копию:

bcdedit /copy {current} /d "Copy of my current Windows Boot Loader"

The entry was successfully copied to {5599a3fc-e4ee-11e7-a5f3-c86000d0b92a}.

Это создает независимую запись с правильным именем, теперь вам нужно указать, что делать. Поскольку в последних операционных системах почти ничего не изменилось, вы можете просто установить устройство и osdevice в свой раздел Win7, и это, вероятно, будет работать. Если необходимо, посмотрите на вывод / enum при обычной загрузке Win7 и скопируйте записи, которые, как ожидается, ожидаются. Но обычно достаточно временно назначить букву вашей второй ОС, например, «Q», а затем введите команду: bcdedit /set {NEW_IDENTIFIER} device partition=Q:или что-то, и то же самое для osdevice. bcdedit отсортирует буквы дисков, см. ниже. Вы можете удалить букву временного диска после ее использования в bcd.

Затем добавьте его в список записей в {bootmgr} с помощью bcdedit /displayorder {NEW_ID} /addlastи, что крайне важно, скажите bcd отображать меню загрузки с помощью bcdedit /set {bootmgr} displaybootmenu Yes.

Выполнено.

Обратите внимание - в BCD безопасно использовать «нечетные» или «неправильные» буквы дисков, и это безопасно, если вывод / enum также содержит их.

Чтобы было ясно, вам не нужно беспокоиться о том, что ваше новое устройство будет идентифицировано как Q: (или как оно там), когда оно «должно быть C:». bcdedit хранит идентификатор жесткого диска, а не букву. Это просто принятие и отображение Q: чтобы быть полезным. Если устройство имеет букву, оно будет показывать букву по умолчанию вместо идентификатора устройства, для вашего удобства. Это можно увидеть, удалив или назначив букву из 2-й ОС в DISKPART или DISKMGMT.MSC, и вместо этого вывод / enum немедленно вернется в \ Device. На самом деле он сохранил правильный идентификатор жесткого диска, и когда он используется для загрузки, Windows найдет это устройство - буква для удобства и никогда не сохраняется.

Stilez
источник
Откуда вы взяли {0743bb44-fda6-11e3-90c8-e3ee27f3aec6}? Вы уже скопировали {current} загрузчик Windows ; что еще вы делаете копию? (Не менеджер загрузки Windows, я предполагаю)
Ян Бойд
Спасибо. Я могу подтвердить, что это работало как эта версия Windows 10 1903 (сборка 18362). У меня был образ раздела NTFS с операционной системой Windows 10, который я восстановил в раздел на другом компьютере, перезагрузился с установочного носителя в Windows Recovery и назначил букву драйвера, используя diskpart. Затем сделали bcdedit / копию {default} (нет {current} в WinRE) и bcdedit / set устройства и osdevice на новый диск. При перезагрузке мне был предоставлен выбор ОС для запуска, и он прекрасно перезагрузил старый образ. Это была Windows 10, которая очень гибко загружалась независимо от полного изменения HW.
Марко Кохтала
2

В ответ на конкретный вопрос автора, который повторяется в комментариях (хотя он отличается от его первоначального вопроса относительно bcdedit.exeпоследовательностей для достижения того же самого):

Возможно, что-то столь же простое, как msconfig, за исключением того, что оно позволяет вам перейти к другой установке Windows и добавить ее для вас.

EasyBCD - это именно то, что вы ищете (бесплатно для личного использования). Это визуальный инструмент менеджера двойной загрузки для Windows, и добавление новой записи для Windows производится по принципу «укажи и щелкни», в точности, как ты это описал .

В сети EasyBCD много ресурсов, поэтому я не буду здесь все повторять. По сути, EasyBCD оборачивает сложность bcdedit.exeи расширяет ее собственными модулями загрузчика, чтобы вы могли настроить двойную загрузку с другими (более новыми или более старыми) версиями Windows, а также с Linux, BSD и другими.

Полное раскрытие: я основной автор EasyBCD.

Махмуд Аль-Кудси
источник
-1
bcdedit
bcdboot
bcdedit /create

Это может быть указано на файл, подобный файлу .vhd, но созданный как раздел диска и инициализированный и прикрепленный, или смонтированный на лету и перезагруженный как ОС. ОС может быть скрыта внутри другого раздела. другой раздел может быть скрыт внутри другого раздела и ОС внутри него. при запуске bcdeditуказывать на другой файл .vhd, где бы он ни находился. Он загружается. Мой преподаватель показал это в классе, но не смог или отказался дать другие объяснения bcdedit. Но это работает, чтобы скрыть и управлять полностью функциональной ОС.

  1. bcdboot e:\windows
  2. bcdboot c:\windows
убер-раджан
источник