Анализ данных и параметры хранилища загрузки
Для того, чтобы грамотно вносить изменения, нужно познакомиться со структурой того, куда эти изменения вносятся. Информация о BCD представлена в виде двух столбцов: в левом столбце расположены названия параметров, а в правом – их значения. Я не преследую цель подробно описать каждую микрокоманду или идентификатор, а остановлюсь только на касающихся меню загрузки.
bcdedit
Некоторые значения параметров BCD записаны в фигурных скобках – {}. Это идентификаторы – ID. Любой идентификатор имеет буквенно-цифровой код вида {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}. Стандартные идентификаторы имеют названия, например: {default}, {bootmgr}, {ntldr} и так далее.
Остановимся на параметрах, которые нас интересуют:
- идентификатор – ID той или иной записи;
- device – показывает раздел, на котором расположены файлы загрузки (это может быть операционная система или папка BOOT);
- osdevice – показывает раздел, на котором расположены системные файлы операционной системы. Обычно, значения параметров device и osdevice равны;
- path – если device определял раздел диска, который содержит файлы операционной системы, то этот параметр определяет остальной путь к загрузчику операционной системы;
- default – показывает ID операционной системы, загружаемой по умолчанию, если операционная система, в которой запустили командную строку, загружается по умолчанию, параметру default присваивается значение {current};
- displayorder – показывает порядок, в котором расположены записи о загружаемых системах;
- timeout – таймаут (смотри выше), значение показано и устанавливается в секундах;
- locale – указывает язык загрузочного меню или меню дополнительных параметров загрузки;
- description – показывает название операционной системы, отображающееся в меню загрузки.
Это, конечно, далеко не полный, но, в рамках данной статьи, вполне достаточный перечень.
Все команды bcdedit.exe, в которых отсутствует команда set с дальнейшим указанием идентификатора, выполняются для диспетчера загрузки. Вы должны это помнить, потому что, желая что-то изменить в записи операционной системы и забыв указать ее идентификатор, вы вносите изменения в диспетчер. Хорошо, если все ограничится «восстановлением запуска».
Прежде чем продолжить, допустим, что наше меню загрузки содержит три записи с идентификаторами {ID1}, {ID2}, {ID3}.
Назначение системы, загружаемой по умолчанию
Здесь все просто – в зависимости от того, какую систему мы хотим загружать по умолчанию, ID той системы и пишем в команде. Например, для системы с ID2 команда:
bcdedit /default {ID2}Но эта команда не перемещает запись о системе, загружаемой по умолчанию, на верхнюю строчку меню загрузки.
Изменение расположения записей в меню загрузки
Существует 3 способа изменить расположение записей:
bcdedit /displayorder {ID} /addlastbcdedit /displayorder {ID} /addfirstbcdedit /displayorder {ID3} {ID1} {ID2}- использовать команду для перемещения выбранной записи вниз списка:
- использовать команду для перемещения выбранной записи вверх списка:
- использовать команду для формирования меню в выбранном порядке:
Изменение таймаута
bcdedit /timeout XXгде XX – время в секундах.
Изменение языка диспетчера загрузки
bcdedit /set locale ln-Lnгде ln-Ln – выбранное обозначение языка. Для русского – это ru-Ru, для английского – en-Us, для немецкого – de-De, для украинского – uk-UA и т.д.
Удаление записи о загрузке системы
bcdedit /displayorder {ID2} /removeЭту команду лучше использовать для временного исключения записи загрузки из меню. При выполнении этой команды запись о параметрах выбранной системы не удаляется из BCD и при необходимости может быть восстановлена любой из вышеназванных команд bcdedit /displayorder.
Работа с записями операционных систем в bcd
Так как изменения касаются конкретных записей, в команде обязательно должен быть ID этой записи.
Изменение названия загружаемой системы
Такая необходимость обычно возникает после использования среды восстановления, когда после названия операционной системы появляется дописка – (восстановлено), или когда хочется исправить “Предыдущая версия Windows” на более понятное “Windows XP”.
Команда:
bcdedit /set {ID} description "Новое название"Изменение буквы раздела, на котором расположена папка операционной системы и ее загрузочные файлы
bcdedit /set {ID} device partition=X:
bcdedit /set {ID} osdevice partition=X:где X – буква раздела жесткого диска.
Как правило значения device и osdevice совпадают.
Изменение языка меню дополнительных вариантов загрузки
Для изменения языка меню дополнительных вариантов загрузки (при нажатии F8 после наведения на строку меню с нужной операционной системой) выполните команду с указанием ID операционной системы:
bcdedit /set {ID} locale ln-Lnчто такое ln-Ln – описано выше.
Добавление записей операционных систем в bcd и меню загрузки
Вариантов для выполнения этой процедуры много, но остановимся на самых популярных или нетрудоемких. Если добавляемая система – Windows Vista или Windows 7 можно автоматизировать процесс, воспользовавшись средой восстановления и одной из ее опций – «восстановление запуска». В этом случае в BCD будет создана новая запись о загрузке и добавлен пункт меню в диспетчер загрузки. Такой же эффект вы получите при использовании команды:
bootrec /rebuildbcdЕсли утилита найдет на компьютере операционную систему, запись о которой отсутствует в BCD, такая запись также будет создана.
Добавление записи загрузки windows xp
bcdedit /create {ntldr} /d "Microsoft Windows XP"
bcdedit /set {ntldr} device partition=C:
bcdedit /set {ntldr} path ntldr
bcdedit /displayorder {ntldr} /addlastДобавление записи загрузки windows vista и выше
Можно воспользоваться методом, описанным выше, то есть начать с команды:
bcdedit /create /d " Microsoft Windows Vista " /application OSLOADERНо этот способ трудоемок и не лишен вероятности сделать многочисленные ошибки. Проще воспользоваться копированием уже существующей записи и изменить значения параметров device и osdevice на соответствующие добавляемой операционной системе. Допустим, что вы работаете в Windows 7. Выполните:
bcdedit /copy {current} /d "Microsoft Windows Vista"в результате выполнения команды вы получите сообщение «Запись успешно скопирована в {хххххххх-хххх-хххх-хххх-хххххххххххх}». Далее выполните:
bcdedit /set {хххххххх-хххх-хххх-хххх-хххххххххххх} device partition=X:
bcdedit /set {хххххххх-хххх-хххх-хххх-хххххххххххх} osdevice partition=X:где X – буква раздела, на котором находится операционная система. Код, который обозначен крестиками, вводите внимательно, а лучше скопируйте и вставляйте в команды с помощью правой кнопки мыши. Наконец, выполните команду, добавляющую новую запись в диспетчер загрузки:
bcdedit /displayorder {хххххххх-хххх-хххх-хххх-хххххххххххх} /addlastКак вы понимаете, запись будет добавлена внизу существующего списка.
Добавление записи загрузки операционной системы с виртуального жесткого диска
Если вы установили Windows 7 на виртуальный жесткий диск и хотите добавить запись в диспетчер загрузки, воспользуйтесь способом, описанным выше, но с учетом особенностей загрузки с VHD. Полученный после выполнения команды bcdedit /copy… буквенно-цифровой код в командах обозначен как {ID}:
bcdedit /copy {current} /d "Загрузка с VHD"
bcdedit /set {ID} device vhd=[X:]DIRfilename.vhd
bcdedit /set {ID} osdevice vhd= [X:]DIRfilename.vhd
bcdedit /set {ID} detecthal on
bcdedit /displayorder {ID} /addlastгде [X:]DIRfilename.vhd – полный путь к файлу VHD и указание имени файла.
Удаление записи загрузки системы из bcd и диспетчера загрузки
Удаление записи об установленной операционной системе из BCD и диспетчера загрузки выполняется с помощью команды
bcdedit /delete {ID}Есть особенность выполнения команды: если в качестве ID указывается известная запись, например {ntldr}, то команда должна выполняться с ключом /f:
bcdedit /delete {ntldr} /fЕсли же ID записывается в буквенно-цифровом коде, ключ /f не нужен. При выполнении этой команды данные об удаляемой операционной системе удаляются и из BCD, и из диспетчера загрузки. В этом ее основное отличие от команды
bcdedit /displayorder {ID} /removeЗаключение
Добавление записей операционных систем в bcd и меню загрузки
Вариантов для выполнения этой процедуры много, но остановимся на самых популярных или нетрудоемких. Если добавляемая система – Windows Vista или Windows 7 можно автоматизировать процесс, воспользовавшись средой восстановления и одной из ее опций – «восстановление запуска».
bootrec /rebuildbcdЕсли утилита найдет на компьютере операционную систему, запись о которой отсутствует в BCD, такая запись также будет создана.
Добавление записи загрузки windows vista и выше
Можно воспользоваться методом, описанным выше, то есть начать с команды:
bcdedit /create /d " Microsoft Windows Vista " /application OSLOADERНо этот способ трудоемок и не лишен вероятности сделать многочисленные ошибки. Проще воспользоваться копированием уже существующей записи и изменить значения параметров device и osdevice на соответствующие добавляемой операционной системе. Допустим, что вы работаете в Windows 7. Выполните:
bcdedit /copy {current} /d "Microsoft Windows Vista"в результате выполнения команды вы получите сообщение «Запись успешно скопирована в {хххххххх-хххх-хххх-хххх-хххххххххххх}». Далее выполните:
bcdedit /set {хххххххх-хххх-хххх-хххх-хххххххххххх} device partition=X:
bcdedit /set {хххххххх-хххх-хххх-хххх-хххххххххххх} osdevice partition=X:где X – буква раздела, на котором находится операционная система. Код, который обозначен крестиками, вводите внимательно, а лучше скопируйте и вставляйте в команды с помощью правой кнопки мыши. Наконец, выполните команду, добавляющую новую запись в диспетчер загрузки:
bcdedit /displayorder {хххххххх-хххх-хххх-хххх-хххххххххххх} /addlast
Как вы понимаете, запись будет добавлена внизу существующего списка.
Добавление записи загрузки windows xp
bcdedit /create {ntldr} /d "Microsoft Windows XP"
bcdedit /set {ntldr} device partition=C:
bcdedit /set {ntldr} path ntldr
bcdedit /displayorder {ntldr} /addlastДобавление записи загрузки операционной системы с виртуального жесткого диска
Если вы установили Windows 7 на виртуальный жесткий диск и хотите добавить запись в диспетчер загрузки, воспользуйтесь способом, описанным выше, но с учетом особенностей загрузки с VHD. Полученный после выполнения команды bcdedit /copy… буквенно-цифровой код в командах обозначен как {ID}:
bcdedit /copy {current} /d "Загрузка с VHD"
bcdedit /set {ID} device vhd=[X:]DIRfilename.vhd
bcdedit /set {ID} osdevice vhd= [X:]DIRfilename.vhd
bcdedit /set {ID} detecthal on
bcdedit /displayorder {ID} /addlastгде [X:]DIRfilename.vhd – полный путь к файлу VHD и указание имени файла.
Изменение буквы раздела, на котором расположена папка операционной системы и ее загрузочные файлы
bcdedit /set {ID} device partition=X:
bcdedit /set {ID} osdevice partition=X:где X – буква раздела жесткого диска.
Как правило значения device и osdevice совпадают.
Изменение расположения записей в меню загрузки
Существует 3 способа изменить расположение записей:
bcdedit /displayorder {ID} /addlastbcdedit /displayorder {ID} /addfirstbcdedit /displayorder {ID3} {ID1} {ID2}- использовать команду для перемещения выбранной записи вниз списка:
- использовать команду для перемещения выбранной записи вверх списка:
- использовать команду для формирования меню в выбранном порядке:
Изменение таймаута
bcdedit /timeout XXгде XX – время в секундах.
Изменение языка диспетчера загрузки
bcdedit /set locale ln-Lnгде ln-Ln – выбранное обозначение языка. Для русского – это ru-Ru, для английского – en-Us, для немецкого – de-De, для украинского – uk-UA и т.д.
Изменение языка меню дополнительных вариантов загрузки
Для изменения языка меню дополнительных вариантов загрузки (при нажатии F8 после наведения на строку меню с нужной операционной системой) выполните команду с указанием ID операционной системы:
bcdedit /set {ID} locale ln-Lnчто такое ln-Ln – описано выше.
Как изменить значение задержки загрузки
Чтобы изменить значение задержки, по истечению которого начнется загрузка операционной системы, выполните такую команду:
bcdedit /timeout SS
в данном случае SS – число в секундах, скажем, красивое число 66.
Как изменить название операционной системы в меню загрузки
Самая вкусная возможность – ввести свое название для операционной системы, отображаемое в меню загрузки.
Кроме того, так можно изменить название ОС, работа которой была восстановлена через среды восстановления. У таких ОС в меню загрузки появляется надпись “восстановлено”. Любое название можно ввести такой командой:
bcdedit /set {ID} description "Выбранное название"К примеру:
bcdedit /set {ntldr} description "Мастдай ВыньХэПэ Профессиональный SP3"
bcdedit /set {current} description "Microsoft Windows 7 Corporate x32"Как изменить букву раздела, где находится папка ОС и загрузочные файлы
bcdedit /set {ID} device partition=буква_диска:
bcdedit /set {ID} osdevice partition=буква_диска:Вместо буквы диска подставьте понятно что, скажем, C: или D:.
Как изменить операционную систему, загружаемую по умолчанию
Укажите значение /default и идентификатор ОС, что будет загружаться по умолчанию. Скажем, для ОС с идентификатором {ID3} команда будет выглядеть следующим образом:
bcdedit /default {ID3}Теперь ОС с {ID3} будет в самом вверху меню загрузки.
Как изменить язык дополнительного меню загрузки
Дополнительное меню загрузки вызывается нажатием клавиши <F8>. Бывает так, что это меню становится английским, хотя мы ранее и выбрали русский. Это легко исправить:
bcdboot %Windir% /l ru_RU
Аналогичным образом вместо ru_RU можно указать en_US или обозначение любого другого языка.
Назначение системы, загружаемой по умолчанию
Здесь все просто – в зависимости от того, какую систему мы хотим загружать по умолчанию, ID той системы и пишем в команде. Например, для системы с ID2 команда:
bcdedit /default {ID2}Но эта команда не перемещает запись о системе, загружаемой по умолчанию, на верхнюю строчку меню загрузки.
Работа с записями операционных систем в bcd
Так как изменения касаются конкретных записей, в команде обязательно должен быть ID этой записи.
Редактирование меню загрузки с помощью bcdedit.exe
Создайте на любом из разделов папку для резервной копии. Назовите ее BCDREZ. Выполните:
bcdedit /export X:BCDREZbcdгде X – буква раздела с находящейся на нем папкой BCDREZ.
В любом случае вы сможете вернуться к исходной точке, выполнив экспорт BCD из резервной копии:
bcdedit /import X:BCDREZbcdРедактирование меню загрузки с помощью окна «загрузка операционной системы»
Открыть окно «Загрузка операционной системы» можно так: Пуск – «Панель управленияВсе элементы панели управленияСистема» или, если включено отображение элементов управления Панели инструментов по категориям: «Панель управленияСистема и безопасностьСистема». Далее:
«Дополнительные параметры системы», в открывшемся окне перейдите на вкладку «Дополнительно». Также можете воспользоваться возможностями поиска Windows 7 и в поле поиска написать «Расш», в открывшемся списке выбрать «Просмотр расширенных параметров системы». В рамке «Загрузка и восстановление» нажмите кнопку «Параметры». Нас будет интересовать верхняя часть окна: «Загрузка».
С помощью данного окна вы сможете:
- увидеть список операционных систем, находящийся в меню загрузки;
- отредактировать время (таймаут), в течение которого будет виден этот список;
- изменить систему, загружаемую по умолчанию.
Как мы видим, данный инструмент не особо отличается от предыдущего, за исключением нескольких деталей. И если в Windows XP была кнопка «Правка», нажав на которую пользователь имел возможность самостоятельно править загрузочное меню, то, начиная с Windows Vista, такой простой способ отсутствует.
Редактирование меню загрузки с помощью средства «конфигурация системы»
Чтобы открыть окно «Конфигурация системы», нажмите кнопку “Пуск” и клавишу с буквой R (далее – Win R). В строке «Выполнить» наберите msconfig, нажмите Enter. Откроется окно конфигурации системы. Перейдите на вкладку «Загрузка».
Данный инструмент дает возможность:
- получить информацию о текущей и загружаемой по умолчанию системах;
- отредактировать время (таймаут), по истечении которого будет загружена операционная система, определенная для загрузки по умолчанию без вмешательства пользователя;
- изменить систему, загружаемую по умолчанию;
- удалить ненужную запись из меню загрузки.
Удаление записи загрузки системы из bcd и диспетчера загрузки
Удаление записи об установленной операционной системе из BCD и диспетчера загрузки выполняется с помощью команды
bcdedit /delete {ID}Есть особенность выполнения команды: если в качестве ID указывается известная запись, например {ntldr}, то команда должна выполняться с ключом /f:
bcdedit /delete {ntldr} /fЕсли же ID записывается в буквенно-цифровом коде, ключ /f не нужен. При выполнении этой команды данные об удаляемой операционной системе удаляются и из BCD, и из диспетчера загрузки. В этом ее основное отличие от команды
bcdedit /displayorder {ID} /removeУдаление записи о загрузке системы
bcdedit /displayorder {ID2} /removeЭту команду лучше использовать для временного исключения записи загрузки из меню. При выполнении этой команды запись о параметрах выбранной системы не удаляется из BCD и при необходимости может быть восстановлена любой из вышеназванных команд bcdedit /displayorder.


