Редактировать список операционных систем. Восстановление файла конфигурации загрузки (BCD). Видео — Редактирование меню загрузки операционных систем

Начиная с Windows Vista, корпорация Microsoft усложнила процесс редактирования загрузчика Windows. Мы уже касались утилиты bcdedit.exe . Эта статья посвящена ей подробнее.

Для начала разберемся, почему Microsoft решила отказаться от столь простого понятного текстового файла boot.ini . Дело, как это часто водится, в безопасности.

Для усложнения получения доступа к параметрам загрузчика было придумано специальное хранилище данных конфигурации загрузчика (BCD). В Windows Vista и более поздних версиях данные конфигурации загрузчика хранятся в виде специальных программных объектов, которые уже не являются простыми текстовыми элементами. Каждый объект в хранилище имеет уникальный идентификатор (GUID) и хранится в специальном формате. Каждый идентификатор является уникальным для конкретной копии операционной системы. Для удобства редактирования параметров загрузчика некоторым из объектов помимо идентификаторов присвоены псевдонимы, по которым к ним и можно обращаться посредством утилиты bcdedit.exe. Вот список основных псевдонимов:

{bootmgr} Указание записи диспетчера загрузки Windows.
{fwbootmgr} Указание записи диспетчера загрузки микропрограмм в энергонезависимой ОЗУ, часто используемых в системах с UEFI.
{memdiag} Указание записи приложения диагностики памяти.
{ntldr} Указание на загрузчик Ntldr, используемых в прошлых версиях ОС (до Windows Vista).
{current} Виртуальный идентификатор, обозначающий загрузочную запись запущенной в данной момент операционной системы.
{default} Виртуальный идентификатор, обозначающий используемую по умолчанию загрузочную запись.
{ramdiskoptions} Включает в себя параметры диспетчера загрузки при работе с электронными дисками (т.е. располагающимися в оперативной памяти).
{dbgsettings} Содержит глобальные параметры отладки, которые наследуются любой записью в приложении загрузки.
{emssettings} Содержит глобальные параметры служб аварийного управления, которые наследуются любой записью в приложении загрузки.
{badmemory} Включает в себя общий список дефектов оперативной памяти, который наследуется любой записью в приложении загрузки.
{globalsettings} Общие параметры, которые наследуются всеми записями в приложении загрузки.
{bootloadersettings} Набор общих параметров, наследуемых всеми записями приложений загрузки Windows.
{resumeloadersettings} Набор общих параметров, наследуемых всеми возобновлениями работы Windows из спящего режима.
{hypervisorsettings} Параметры гипервизора, которые могут наследоваться любой записью в приложении загрузки.

Коснемся команд, доступных в утилите bcdedit.exe . Для получения списка команд запустите командную строку и введите

bcdedit.exe /?

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

bcdedit.exe /? [команда]

Для просмотра текущих параметров загрузки Windows достаточно вызвать утилиту в командной строке:

bcdedit.exe bcdedit.exe > C:\bootconf.txt

Путь для сохранения и имя можно, конечно, указать и другие.

Если же вместо псевдонимов Вы хотите видеть GUID, то команду можно видоизменить:

bcdedit.exe /v > C:\bootconf.txt

Можно использовать и другие форматы для экспорта информации. Например rtf, doc (не docx) или csv. Это позволяет не отвлекаться на проблемы с кодировками.

Перед редактированием загрузчика всегда разумно сделать его резервную копию. Делается это командой:

bcdedit.exe /export C:\BackupBCD\BCDfile

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

bcdedit.exe /export "C:\My BackupBCD\BCDfile"

Восстановление загрузчика производится командой

bcdedit.exe /import C:\BackupBCD\BCDfile

Разберем изменение основных настроек загрузчика Windows при помощи утилиты bcdedit.exe.

bcdedit.exe /timeout 15

Приведенная выше команда устанавливает время вывода списка загрузки равным 15 секундам.

Если помимо современных версий Windows, на компьютере также установлены старые версии ОС, относящиеся к семейству NT (2000, XP, Server 2003 и пр.), установить такую ОС в качестве загружаемой по умолчанию можно командой

bcdedit.exe /default {ntldr}

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

bcdedit.exe /default {current}

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

bcdedit.exe /default

В данном случае в конце должен содержаться GUID в виде набора букв и цифр. Помните, что GUID должен быть заключен в фигурные скобки ({} ).

Вы можете также отредактировать местоположение операционных систем в списке загрузки. Делается это следующей командой

bcdedit.exe /displayorder {ntldr} {current}

В таком примере первой в списке будет отображаться устаревшая версия Windows, затем текущая, из-под которой вводилась эта команда. Вместо псевдонимов можно использовать и GUID систем.

Теперь разберем как создавать новые записи в загрузчике Windows при помощи утилиты bcdedit.exe. В общем виде команда создания новой записи выглядит так:

bcdedit.exe /create [{}] /d <описание> | /inherit DEVICE | /device]

разберем синтаксис команды подробнее.

ID — идентификатор, который будет использоваться для новой записи загрузки. В качестве идентификатора может быть использован GUID или псевдоним;

описание — то, как новая запись загрузки будет отображаться в списке;

application — указание на то, что новая запись является записью приложения, в данном случае тип_приложения может принимать один из следующих вариантов: BOOTSECTOR , OSLOADER , RESUME , STARTUP .

inherit — указание на то, что новая запись является наследуемой записью. тип_приложения может принимать одно из следующих значений: BOOTMGR , BOOTSECTOR , FWBOOTMGR , MEMDIAG , NTLDR , OSLOADER , RESUME . Если тип_приложения не указан, то новая запись может наследоваться от любой записи.

inherit DEVICE — указание на то, что новая запись является наследуемой и может быть унаследована только записью параметров устройства.

device — указание на то, что новая запись является дополнительной записью параметров устройства.

Добавить новую запись загрузки ОС семейства Windows NT данной командой довольно просто. Мы уже знакомы с псевдонимом ntldr , поэтому сгенерировать нужную команду не составит труда.

Прежде чем приступать к созданию новой записи, нам нужно скопировать файлы ntldr , boot.ini , ntdetect.con , bootfont.bin из раздела со старой ОС на тот раздел, где лежит загрузчик Windows. Им может быть как раздел, куда установлена свежая версия Windows, так и отдельный скрытый раздел, который может не отображаться в проводнике, но отображаться в консоли Управление дисками . Такой раздел будет носить описание Зарезервировано системой (System reserved ).

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

После копирования файлов создаем новую запись загрузки:

bcdedit.exe /create {ntldr} /d "Загрузчик ОС Windows NT"

Создаем параметры передачи загрузчику Windows NT:

bcdedit.exe /set device partition=x:

x в данном случае это имя раздела, где лежит загрузчик Windows NT. Если раздел является скрытым и не имеет буквы, то его нужно указать в том виде, в котором он отображается в текущей конфигурации ОС, например:

bcdedit.exe /set device partition=\Device\HarddiskVolume2 bcdedit.exe /set {ntldr} path \ntldr

И добавить этот пункт в конец списка загрузки:

bcdedit.exe /displayorder {ntldr} /addlast

Но и это еще не всё. Ведь нам надо убедиться, что загрузчик ntldr находит ОС. Если что-то идет не так, то первым делом убедитесь, что в файле boot.ini прописаны верные пути к ядру Windows NT. Например, если речь идет о первом разделе второго жесткого диска, то путь будет выглядеть так:

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS=»ОС семейства Windows NT» /fastdetect

Помните, что нумерация дисков в загрузчике ntldr начинается с нуля, а разделов с единицы.

Разберем синтаксис команды удаления записи загрузки.

bcdedit.exe /delete {}

файл_хранилища — указание на используемое хранилище. Если параметр не задан явно, используется хранилище текущей ОС;

ID — идентификатор записи, которую требуется удалить. В качестве идентификатора может быть использован GUID или псевдоним;

f — параметр удаления указанной записи. Без этого параметра утилита bcdedit.exe не удаляет записи, имеющие известные псевдоним;

cleanup — удаление записи загрузки с удаление также и из списка загрузки. Кроме того, будет удалены и все ссылки на данную запись из хранилища. Параметр используется по умолчанию, если не задан nocleanup ;

nocleanup — удаление записи загрузки без удаления из списка загрузки.

Например, загрузчик ОС семейства Windows NT имеет известный нам псевдоним ntldr , а потому запись загрузки не удалится без параметра f . Пример удаления:

bcdedit.exe /delete {ntldr} /f

Если у записи нет псевдонима, а только GUID, то достаточно указать его в фигурных скобках и не дописывать параметр f .

На самом деле, возможности нынешнего загрузчика Windows довольно обширны, чтобы описать их в одной статье. «За кадром» остались такие вопросы как создание специфических конфигураций загрузки или, например, добавление в меню загрузки пункта загрузки иной ОС (в первую очередь речь о Linux). К данным темам нам обязательно придется вернуться в дальнейшем. Ну а дотошный читатель всегда может изучить справку к утилите bcdedit.exe самостоятельно.

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

Сегодня займемся непосредственно редактированием конфигураций вариантов загрузки Windows. Речь пойдет о современном диспетчере загрузки Bootmgr, который впервые появился в Windows Vista, а точнее, о сопутствующем ему редакторе системного хранилища BCD (Boot Configuration Data) — bcdedit.exe и его командах.

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

В контексте материалов, опубликованных на блоге, примеры редактирования данных конфигурации загрузки встречались уже несколько раз. Например, в , в которой описывалась загрузка операционной системы Windows 7 с другим (модифицированным) ядром. Или при загрузки операционной системы с виртуального диска.

Возможности графического интерфейса Windows по редактированию меню загрузчика

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

Если открыть элемент “Система” в “Панель управления” или, что то же самое, «Свойства» в контекстном меню (по правой кнопке мыши) «Компьютер» и дальше “Дополнительно” –> “Загрузка и восстановление” –> “Параметры”, откроется окно “Загрузка и восстановление” >

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

Вторым вариантом редактирования BCD с использованием GUI (Graphical user interface) является оснастка «Конфигурация системы». Для ее запуска нужно в окне «Выполнить», или в командной строке, набрать и запустить msconfig >>

Дополнительно к тем немногочисленным возможностям, которые предоставляет апплет «Система» из «Панель управления», на вкладке «Загрузка» в «Конфигурация системы» можно еще удалить любой неактивный вариант загрузки. Это уже кое-что, но явно недостаточно для полноценного редактирования BCD.

Поэтому, придется о GUI забыть и обратиться к консольным командам редактора .

Консольное редактирование меню диспетчера загрузки Windows

Сложного ничего нет. Главное понимать, что и зачем делаешь. Редактор bcdedit.exe, который находится в папке …\Windows\System32, нужно запускать с правами администратора — клик правой кнопкой мыши на «Командная строка» –> «Запуск от имени администратора».

Без параметров bcdedit выведет всю информацию о вариантах загрузки, записанную в хранилище BCD >

Комментировать все строки, которые мы видим на представленном фрагменте экрана, особого практического смысла нет. Кроме того, часть из них понятна и без объяснений. Выделим те, которые могут в первую очередь пригодиться на практике.

идентификатор - заключенный в фигурные скобки {} (скобки в командах писать обязательно) 36-символьный, 32-значный, номер записи, в которой прописаны параметры загрузки операционной системы. Для системы, загруженной в данный момент, номер заменяется на {current}. Система, загружаемая по умолчанию, обозначается как {default}.

Для того, чтобы не набирать на клавиатуре такой длинный идентификатор, очень удобно воспользоваться текстовой копией выдачи bcdedit. Для этого нужно кликнуть правой кнопкой мыши в любом месте окна командной строки, в появившемся контекстном меню выбрать «Выделить все» и нажать на клавиатуре «Enter». Аналогичного, но выборочного, результата можно добиться, выбрав в контекстном меню «Пометить» и выделив далее нужные строки. Далее запускаем текстовый редактор «Блокнот» и вставляем в новый файл содержимое буфера обмена.

device - раздел, на котором расположены файлы загрузчика операционной системы. Соответственно, для секции «Диспетчер загрузки Windows» это активный системный раздел, для секции «Загрузка Windows» — загрузочный раздел конкретной операционной системы;

description – название операционной системы, отображаемое в списке во время загрузки;

path - путь к загрузчику ОС;

displayorder, timeout – соответственно, порядок отображения вариантов в меню загрузки и время в секундах показа самого списка до начала загрузки дефолтной ОС.

Для того, чтобы изменить значение любого параметра, нужно запустить bcdedit с соответствующими ключами. Например, изменяем название операционной системы в меню:
bcdedit /set {ID} description "Новое название системы" где {ID} – идентификатор записи для данной ОС (вот тут очень пригодится подстановка из сохраненного текстового файла);

bcdedit /displayorder {ID1} {ID2} {ID3}… указываем порядок отображения вариантов загрузки в меню.

Возможны действия с одной записью:
bcdedit /displayorder {ID} / addlast |addfirst |remove| – добавить запись в конец | начало списка | удалить (только из меню);

bcdedit /timeout XX – время отображения меню в секундах;

bcdedit /default {ID} - указываем систему, которая будет загружаться по умолчанию.

Наиболее вероятные варианты применения команд редактора bcdedit

Первое, что имеет смысл сделать до начала любых операций с BCD, это создать копию содержимого системного хранилища конфигурации загрузки:
bcdedit /export "C:\Backup\bcd-backup" где C:\Backup\ – произвольно выбранная для хранения папка, а bcd-backup – произвольное имя файла копии хранилища.

bcdedit /import "C:\Backup\bcd-backup" – противоположная команда. Восстанавливает содержимое хранилища конфигурации загрузки из его копии.

Создать новую загрузочную запись можно различными командами. Если тип новой системы аналогичен уже существующей, то имеет смысл воспользоваться командой копирования:
bcdedit /copy {ID} /d "Название новой системы"

Если в качестве «образца» выступает текущая операционная система, то команда будет выглядеть так:
bcdedit /copy {current} /d "Название новой системы" Эта команда сразу добавит новую запись в загрузочное меню.

Если новая загрузочная запись создается «с нуля», то нужно использовать:
bcdedit /create /d "Название новой системы" /application osloader где/application задает тип приложения.

Для создания загрузочной записи NTLDR для загрузчика ОС прежних версий, например, Windows XP:

bcdedit /create {ntldr} /d "Microsoft Windows XP"

Дополнительно нужно указать на каком разделе диска находится загрузчик системы:
bcdedit /set {ntldr} device partition=X: где Х: — буква диска раздела, на котором находятся файлы загрузчика, и путь к нему:
bcdedit /set {ntldr} path \ntldr

Запись можно добавить в конец списка ОС в меню:
bcdedit /displayorder {ntldr} /addlast

Создание записи для системы, загружаемой с виртуального диска (VHD):

bcdedit /copy {current} /d "Система на VHD" — создаем новую запись на основе текущей;

Запускаем bcdedit без параметров и копируем новый {ID}.
bcdedit /set {ID} device vhd=\DIR\filename.vhd - указываем полный путь к виртуальному диску, на котором лежат файлы загрузчика (системный раздел). Буква диска указывается в ;
bcdedit /set {ID} osdevice vhd= \DIR\filename.vhd - указываем местоположение виртуального диска с основными файлами операционной системы (загрузочный раздел);
bcdedit /displayorder {ID} /addlast - добавляем новую запись о системе в конец списка.

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

В заключении рассмотрим команды удаления:

bcdedit /delete {ID} – удаление записи из хранилища;

bcdedit /deletevalue {ID} <тип_данных> – команда удаляет элемент данных из записи в хранилище данных конфигурации загрузки, где <тип_данных> — параметр, который следует удалить из указанной записи.

Привет друзья! В сегодняшней статье мы с вами создадим заново загрузчик Windows 7. В каких случаях это может пригодится. К примеру у вас не загружается Windows 7 и выдаёт ошибки, связанные с неисправностью загрузчика, например: "An operating system was not found" (Операционная система не найдена), BOOTMGR is missing. Press ctrl+alt+del, NTLDR is missing при загрузке Windows 7. А может вы перенесли Windows 7 с жёсткого диска на твердотельный накопитель, но система не стартует с SSD и выводит ошибку или показывает чёрный экран. Вы пытаетесь восстановить загрузку операционной системы , но у вас это не получается. В таких случаях нужно удалить и затем создать заново скрытый раздел - System Reserved (Зарезервировано системой, объём 100 МБ), именно на этом разделе находятся файлы загрузки Windows 7.

При установке Windows 7 на ноутбук или компьютер с обычным BIOS (жёсткий диск MBR), автоматически создаётся скрытый раздел System Reserved (Зарезервировано системой, объём 100 МБ), назначение которого - хранить и защищать файлы загрузки операционной системы. Данный раздел всегда имеет атрибуты: (Активен, Система, Основной раздел), и с него происходит запуск операционной системы, установленной на вашем компьютере.

Если данному разделу присвоить букву диска и в параметрах папок (вид) установить параметры "Показывать скрытые файлы" и снять галочку с параметра "Скрывать защищённые системные файлы", то внутри вы увидите папку «Boot» (содержащую хранилище конфигурации загрузки файл - BCD), и менеджер загрузки файл «bootmgr».

Для успеха нашего дела, вспомним механизм загрузки Windows 7 и поможет нам программа BOOTICE.

В первую очередь, после включения компьютера, управление получает подпрограмма BIOS, которая производит проверку на работоспособность всех комплектующих системного блока, затем БИОС смотрит в своих настройках приоритетное для загрузки устройство (жёсткий диск, флешка, DVD-диск) и найдя такое (к примеру жёсткий диск) считывает с него загрузочную запись MBR (Windows 7 обычно устанавливается на диск разметки MBR) . MBR располагается в первом секторе загрузочного диска, имеет размер 512 байт, и содержит в себе программный код NT 6.x ,

Который выполняет поиск активного раздела (Active), с которого может осуществляться загрузка операционной системы, данный активный раздел

называется PBR (Partition Boot Record) и имеет свою загрузочную запись Bootmgr.

После этого управление переходит

менеджеру загрузки файлу «bootmgr» , который запускает файл winload.exe Windows 7. Что такое winload.exe?

Операционная система (в нашем случае Windows 7) это программа и чтобы она заработала (стала загружаться) необходимо запустить исполняемый файл OS: winload.exe или winload.efi. З апускает эти файлы загрузчик. З агрузчик это маленькая программа. Файл winload.exe запускает MBR- загрузчик, а файл winload.efi запускает EFI-загрузчик. Windows 7 в большинстве случаев установлена на диск с MBR загрузчиком.

Загрузка Windows 7 происходит в такой последовательности, менеджер загрузки файл «bootmgr» обрабатывает имеющуюся информацию в хранилище загрузки (файле BCD), а это - меню, время отображения, список операционных систем (если их несколько) и так далее, еcли данные корректные, то следует загрузка операционной системы. Но! Если хоть один из упомянутых мной файлов (bootmgr или BCD) окажется некорректным или вовсе будет отсутствовать, то проблемы при загрузке системы нам обеспечены. Часто бывает, что целостность данных файлов бывает нарушена в силу каких-либо причин (неосторожные действия пользователя, установка менеджеров загрузки сторонних разработчиков, вирусы и т.д), в этом случае стандартные действия по восстановлению загрузчика могут не помочь и тогда лучше всего удалить этот раздел полностью, затем форматировать и создать файлы загрузки заново. Как это можно сделать.

Удаляем скрытый раздел System Reserved (Зарезервировано системой, объём 100 МБ) и создаём его заново с помощью встроенной в систему утилиты командной строки diskpart

Загружаемся с установочной флешки Windows 7. Если не найдёте ISO-образ семёрки, то можете использовать загр. флешку Windows 8.1 или Win 10.

В начальном окне установки системы открываем командную строку клавиатурным сочетанием Shift+F10.

Вводим последовательно команды:

diskpart

lis vol (эта команда отображает буквы, номера, метки, размер и файловую систему. Б уква раздела 100 мб (С:). Том 1. Б уква раздела с установленной Windows 7 - (D:).

sel vol 1 (выбор тома с которым будем работать - 100 мб (С:). Том 1)

del vol (удаляем том 100 мб).

после удаления тома на диске появилась неразмеченная область 100 мб.

creat par prim (создаём основной раздел в этой неразмеченной области)

format fs=ntfs (создаём на разделе файловую систему NTFS)

assign letter С (присваиваем созданному разделу букву С )

activ (делаем раздел активным)

exit (выходим из diskpart)

bootsect /nt60 C: /mbr (данная команда записывает на жёсткий диск нужные коды PBR (Bootmgr) и MBR (NT 6.x ))

bcdboot D:\windows /s C: (создаём загрузчик для Windows 7, находящийся на (D:), расположение загрузчика (С:))

Файлы загрузки успешно созданы.

Данный способ подойдёт и для тех у кого несколько жёстких дисков, и на них установлены OS с загрузчиком.

На данных дисках мы не используем средства bootrec /fixmbr и bootrec /fixboot для обновления кодов MBR и PBR. Эти команды работают только с жёстким диском 0.

Команда bootsect работает с диском который мы укажем. То же самое касается и bcdboot. Без параметра /s , bcdboot работает с активным разделом на жёстком диске 0. И спользуемый нами параметр /s указывает на активный раздел нужного жёсткого диска.

Редактирование меню загрузки Windows 7

В Windows XP загрузочная информация хранилась в файле boot.ini, и для внесения изменений в меню загрузки достаточно было просто отредактировать этот файл в текстовом редакторе. Начиная с Windows Vista все поменялось, и теперь меню загрузки операционной системы находится в хранилище загрузки (Boot Configuration Data, BCD ). Некоторые параметры меню загрузки можно изменить привычным способом, используя графический интерфейс, но полный доступ к BCD возможен только из командной строки.

Мы рассмотрим несколько способов внесения изменений в загрузочное меню. Итак, способ первый.

Апплет панели управления Свойства системы.

Для того чтобы добраться до параметров, отвечающих за загрузку системы, идем в меню Пуск — Панель управления — Система. Откроется окно свойств системы, в котором нужно выбрать пункт «Дополнительные параметры системы».

Затем, из дополнительных свойств системы выбираем раздел «Загрузка и восстановление» и нажимаем кнопку Параметры.

В открывшемся окне мы можем:

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

И все, не добавить новую запись, не изменить или удалить существующую отсюда не получится (в XP была еще кнопка «Правка», при нажатии на которую можно было вручную отредактировать загрузочное меню в Блокноте).

Настроек явно маловато, попробуем другой способ.

Оснастка Конфигурация системы.

Чтобы открыть окно Конфигурация системы, набираем сочетание клавиш Win+R , в строке Выполнить вводим команду msconfig и нажимаем ОК .

В открывшемся окне конфигурации системы переходим на вкладку Загрузка. Здесь мы можем проделать следующие действия:

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

Добавить или изменить запись мы по прежнему не можем.

А что же делать, если нужно, например изменить положение записи в меню загрузки или переименовать ее? В этом нам поможет третий способ:

Утилита командной строки bcdedit

Утилита bcdedit.exe находится в системной папке Windows\System32 . Для работы ей необходим административный доступ к компьютеру, поэтому оболочку командной строки запускаем от имени администратора (иначе при попытке запустить программу будет выдана ошибка).

Если просто ввести команду bcdedit без параметров, то на экран будет выведена информация, хранящаяся в BCD. Информация представлена в виде двух столбцов: слевав расположены названия параметров, справа – их значения.

Вот основные параметры, отвечающие за загрузку:

  • идентификатор — идентификационный номер, указывающий на запись в меню загрузки. Представляет из себя 32-значный буквенно-цифровой код, заключенный в фигурные скобки. Для стандартных идентификаторов используются названия, например {current} — текущая система, {default} — система по умолчанию;
  • device — указывает раздел, на котором расположен загрузчик операционной системы;
  • osdevice — указывает раздел, на котором находится сама операционная система. Как правило, значения device и osdevice идентичны;
  • path — остальной путь к загрузчику операционной системы;
  • description — описание операционной системы, отображающееся в меню при загрузке;
  • default — операционная система, загружаемая по умолчанию;
  • timeout — время ожидания перед загрузкой ОС по умолчанию;
  • displayorder — порядок, в котором системы отображаются при загрузке.

А теперь рассмотрим варианты применения bcdedit:

bcdedit /default {ID} — задаем систему, загружаемую по умолчанию.

bcdedit /displayorder — управляем порядком размещения записей в меню загрузки:

  • bcdedit /displayorder {ID} /addlast — добавляем систему в конец списка;
  • bcdedit /displayorder {ID} /addfirst — добавляем систему в начало списка;
  • bcdedit /displayorder {ID2} {ID1} — указываем порядок отображения систем в списке;
  • bcdedit / displayorder {ID} /remove — удаляем запись из меню загрузки.

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

bcdedit /timeout XX — задаем таймаут в секундах.

bcdedit /set {ID} description ″Название системы″ — изменяем название системы, отображаемое в меню загрузки.

bcdedit /create /d ″Windows Vista″ /application osloader — создаем новую загрузочную запись.

bcdedit /create {ntldr} /d ″Windows XP″ — создаем загрузочную запись для ОС предыдущих версий (XP и старше).

bcdedit /copy {ID} /d ″Новая система″ — копируем загрузочную запись. Таким образом тоже можно добавить новую запись в меню загрузки.

bcdedit /delete {ID} /cleanup — удаляем загрузочную запись. При этом удаляется вся информация об установленной операционной системе из BCD и меню загрузки. У этой команды есть одна особенность — если в качестве ID указывается название, например {default}, то команда должна выполняться с ключом /f , если же ID записывается в буквенно-цифровом коде, ключ /f не нужен.

bcdedit /export ″C:\Backup\bcd″ — экспортируем содержимое хранилища в указанный файл.

bcdedit /import ″C:\Backup\bcd″ — восстанавливаем состояние системного хранилища из резервной копии, созданной с помощью команды /export .

Ну и несколько наиболее «жизненных» примеров

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

bcdedit /copy {current} /d ″New Windows 7 ″ — копируем текущую запись и называем ее по новому;
bcdedit /set {ID} device partition=D:
bcdedit /set {ID} osdevice partition=D:

Добавление загрузочной записи для загрузки системы с виртуального диска (VHD):

— копируем текущую запись;
bcdedit /set {ID} device vhd=\DIR\filename.vhd — указываем местоположение загрузчика системы;
bcdedit /set {ID} osdevice vhd= \DIR\filename.vhd — указываем местоположение операционной системы;
bcdedit /set {ID} detecthal on — включаем принудительное обнаружение аппаратно-зависимого уровня (Hardware Abstraction Layer, HAL);
bcdedit /displayorder {ID} /addlast — добавляем запись о системе в меню загрузки, в конец списка.

Примечание. \DIR\filename.vhd – это полный путь к VHD-файлу и указание имени файла.

Добавление загрузочной записи для загрузки Windows XP:

bcdedit /create {ntldr} /d ″Microsoft Windows XP″ — создаем новую загрузочную запись;
bcdedit /set {ntldr} device partition=\Device\HarddiskVolume1 — указываем расположение файлов загрузки системы;
bcdedit /set {ntldr} path \ntldr — указываем путь к загрузчику системы;
bcdedit /displayorder {ntldr} /addlast — добавляем запись о системе в меню загрузки.