Winows Vista практикум №14 — раскрываем секреты простого на вид загрузочного меню

 | 15.10

Мой Компьютер, №15, 07.04.2008

Содержимое блоков загрузочного меню

Каждый блок загрузочного меню описывает определенные настройки в виде <атрибут> <значение>. Существует множество атрибутов, которые могут отображаться в блоках загрузочного меню, и, как правило, название атрибута в блоке соответствует названию опции, которую нужно указывать в команде bcdedit.exe, чтобы изменить значение соответствующего атрибута.

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

Значение идентификатора указывается в виде GUID-номера (автоматически генерируется при создании нового элемента загрузочного меню). Кроме того, существует несколько предопределенных идентификаторов, которые имеют символьные названия. Например, следующие.

  • {bootmgr}. Определяет блок Диспетчера загрузки Windows.
  • {fwbootmgr}. Определяет блок диспетчера загрузки микропрограмм и применяется в 64-разрядных системах.
  • {memdiag}. Определяет блок приложения диагностики памяти.
  • {ntldr}. Определяет блок Загрузчик прежних версий ОС Windows.
  • {current}. Определяет элемент загрузочного меню Windows, который использовался для загрузки операционной системы в данный момент.
  • {default}. Определяет элемент загрузочного меню Windows, который использовался для загрузки операционной системы по умолчанию.
  • {ramdiskoptions}. Определяет блок дополнительных параметров, необходимых диспетчеру загрузки для устройств электронных дисков.
  • {dbgsettings}. Определяет блок глобальных параметров отладки, который наследуется всеми элементами загрузки Windows.
  • {emssettings}. Определяет блок глобальных параметров служб аварийного управления, который наследуется всеми элементами загрузки Windows.
  • {badmemory}. Определяет блок обнаруженных дефектов оперативной памяти.
  • {globalsettings}. Определяет блок глобальных параметров, который наследуется всеми элементами загрузки Windows.
  • {bootloadersettings}. Определяет блок параметров, который наследуется всеми элементами загрузки Windows.
  • {resumeloadersettings}. Определяет блок описания выхода из спящего режима, который наследуется всеми элементами загрузки Windows.

Скорее всего, из представленного выше списка вы будете использовать только три предопределенных идентификатора. Это идентификаторы {current}, {default} и {ntldr}.

Device. Применяется во всех блоках и определяет букву раздела, на котором находится папка Windows (для элемента, описывающего операционную систему) или папка boot (для элемента, описывающего само загрузочное меню). Как правило, значение атрибута device указывается в формате partition=<буква диска>:.

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

Path. Применяется в блоках Загрузчик прежних версий ОС Windows, Загрузка Windows и определяет путь к загрузчику операционной системы. Как правило, для операционной системы Windows Vista значение данного параметра равно Windowssystem32winload.exe. Значение же данного параметра для блока, запускающего загрузчик предыдущих версий Windows, равно ntldr.

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

Osdevice. Применяется в блоке Загрузка Windows и определяет букву системного раздела для данной операционной системы. Как правило, значение атрибута osdevice указывается в формате partition=<буква диска>:.

Systemroot. Применяется в блоке Загрузка Windows и определяет каталог, в котором находятся системные файлы данной операционной системы (без буквы раздела, на котором находится каталог). Как правило, значение атрибута systemroot равно Windows.

Resumeobject. Применяется во всех блоках и определяет GUID-номер объекта возобновления, связанного с данным элементом загрузочного меню.

Default. Применяется в блоке Диспетчер загрузки Windows и определяет идентификатор элемента загрузочного меню, содержащего описание операционной системы, загружаемой по умолчанию. По умолчанию загружается последняя установленная вами операционная система Windows Vista.

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

Toolsdisplayorder. Применяется в блоке Диспетчер загрузки Windows и определяет порядок расположения элементов загрузочного меню, содержащих описание программ поддержки, которые можно запустить из загрузочного меню. По умолчанию вам доступна только одна программа поддержки — программа диагностики состояния оперативной памяти (Windows Memory Diagnostics).

Timeout. Применяется в блоке Диспетчер загрузки Windows и определяет интервал (в секундах) бездействия пользователя во время отображения загрузочного меню Windows, по истечении которого будет загружена операционная система по умолчанию.

Атрибуты device и osdevice

Выше мы с вами рассмотрели атрибуты device и osdevice, а также узнали их основной синтаксис — partition <буква диска>:. Однако помимо данного синтаксиса существуют и другие варианты синтаксиса значений данных атрибутов. Всего таких вариантов синтаксиса три.

  • PARTITION=<буква диска>:. Данный синтаксис используется при описании загрузки операционной системы, расположенной на жестком диске компьютера.
  • FILE=[[bootЅ<буква диска>:]]<путь>. Данный синтаксис используется для запуска операционной системы Windows Vista из образа.
  • RAMDISK=[[bootЅ<буква диска>:]]<путь>,<идентификатор>. Данный синтаксис используется для запуска операционной системы Windows Vista из образа, расположенного на внешнем диске.

Опция boot в синтаксисах RAMDISK= и FILE= определяет букву раздела диска, на котором находится загрузочное меню, отображаемое в данный момент. Например, если синтаксис RAMDISK= используется для запуска операционной системы с компакт-диска, опция boot указывает на букву диска соответствующего привода компакт-дисков.

Лучше понять варианты использования синтаксиса RAMDISK= можно при помощи загрузочного меню установочного диска Windows Vista. Загрузите это загрузочное меню в программу bcdedit.exe и просмотрите его содержимое. Сделать это можно при помощи команды вида bcdedit.exe /store <буква привода с установочным диском Windows>:bootbcd. Ниже представлен пример того, что вы увидите.

Диспетчер загрузки Windows

———————

идентификатор {bootmgr}

description Windows Boot Manager

locale en-US

inherit {globalsettings}

default {default}

displayorder {default}

toolsdisplayorder {memdiag}

timeout 30

Загрузка Windows

——————-

идентификатор {default}

device ramdisk=[boot]sourcesboot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}

path windowssystem32bootwinload.exe

description Windows Setup

locale en-US

inherit {bootloadersettings}

osdevice ramdisk=[boot]sourcesboot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}

systemroot windows

detecthal Yes

winpe Yes

ems Yes

Администрирование загрузочного меню

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

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

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

Делается это очень просто — при помощи команды bcdedit /export <файл>.

Если вы будете следовать этому совету, тогда даже при серьезных неполадках и ошибках в загрузочном меню вы всегда сможете восстановить его функциональность при помощи созданного ранее файла. Для этого достаточно воспользоваться командой bcdedit /import <файл>.

Создание нового загрузочного меню. Иногда вам может потребоваться возможность создания нового загрузочного меню с нуля. Делается это так же просто, как и импортирование/экспортирование загрузочного меню. Для этого достаточно воспользоваться командой bcdedit /createstore <файл, в котором будет создано новое пустое загрузочное меню>.

Копирование элемента загрузочного меню. Если вы решили изменить определенный элемент загрузочного меню (при помощи описанных ниже примеров), пожалуйста, воспользуйтесь перед этим командой вида bcdedit /copy <идентификатор> /d <значение атрибута description>.

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

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

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

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

Для этого необходимо выполнить два действия. Первое действие мы с вами выполнять уже научились — нужно определить значение атрибута идентификатор, соответствующее элементу загрузочного меню, который мы хотим настроить. Вы можете использовать как значение атрибута идентификатор, представленное GUID-номером, так и предопределенное значение (если оно используется элементом загрузочного меню). На всякий случай напомню, что о том, что такое идентификатор и какие бывают предопределенные идентификаторы, мы с вами уже узнали (когда рассматривали атрибуты блоков загрузочного меню).

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

Делается это при помощи одной команды — bcdedit /set <идентификатор> <атрибут> <значение>. С помощью данной команды изменяется значение атрибута элемента текущего загрузочного меню. Если же вы хотите изменить элемент загрузочного меню, отличный от текущего, нужно воспользоваться командой вида bcdedit /store <файл загрузочного меню> /set <идентификатор> <атрибут> <значение>.

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

Кроме редактирования атрибутов загрузочного меню вы можете выполнять их удаление. Для этого предназначена команда bcdedit /deletevalue <идентификатор> <атрибут>. Так же как и в команде редактирования атрибутов, в этой команде вы можете воспользоваться опцией /store <файл загрузочного меню>, чтобы удалить атрибут элемента, принадлежащего любому загрузочному меню.

Создание элементов загрузочного меню

Помимо возможности редактирования атрибутов элемента загрузочного меню, одной из часто используемых возможностей программы bcdedit.exe является возможность создания нового элемента загрузочного меню. Делается это при помощи команды bcdedit /create, которая имеет следующие варианты синтаксиса:

  • bcdedit /create <идентификатор> /d <значение атрибута description>. Данная команда создает новый элемент загрузочного меню (с указанным опцией /d названием) на основе настроек уже существующего элемента загрузочного меню с данным идентификатором;
  • bcdedit /create /application {OSLOADERЅRESUMEЅ BOOTSECTORЅSTARTUP} /d <значение атрибута description>. Команда создает новый элемент загрузочного меню (с указанным опцией /d названием). При этом опция /application указывает тип создаваемого элемента загрузочного меню;
  • bcdedit /create {/inherit: {BOOTMGRЅBOOTSECTORЅ FWBOOTMGRЅMEMDIAGЅNTLDRЅOSLOADERЅRESUMEЅDEVICE} Ѕ /device} /d <значение атрибута description>. Данная команда создает новый элемент загрузочного меню (с указанным опцией /d названием). При этом опция /inherit определяет тип, от которого создаваемый элемент будет наследовать настройки.

Если вы решили, что на этом создание нового элемента загрузочного меню окончено, вы отчасти правы. Новый элемент действительно будет создан — найти его настройки вы сможете при помощи описанных выше команд вида bcdedit /enum <фильтр>, однако вы так и не сможете найти его в загрузочном меню Windows Vista.

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

  • bcdedit /displayorder <идентификатор> /addfirst. Добавить идентификатор созданного элемента загрузочного меню в начало списка загрузочного меню.
  • bcdedit /displayorder <идентификатор> /addlast. Добавить идентификатор созданного элемента загрузочного меню в конец списка загрузочного меню.
  • bcdedit /displayorder <идентификатор> /remove. Удалить элемент из списка загрузочного меню.

При помощи описанных выше команд изменяется структура верхнего списка загрузочного меню Windows Vista (то есть списка операционных систем, которые можно загрузить). Если же нужно модифицировать содержимое нижнего списка загрузочного меню (списка программ, которые можно запустить), следует воспользоваться командами вида bcdedit /toolsdisplayorder <идентификатор> {/addfirst Ѕ /addlast Ѕ /remove}.

Удаление элементов загрузочного меню

Удаление элемента загрузочного меню такое же простое действие, как и его создание. Для выполнения этого действия достаточно воспользоваться командой вида bcdedit /delete <идентификатор> /f {/cleanup Ѕ /nocleanup}. Если вы укажете опцию /cleanup, тогда помимо самого элемента будут удалены все существующие ссылки на него.

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

Примеры использования программы bcdedit.exe

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

Изменение названия текущей загруженной операционной системы:

bcdedit /set {current} description <новое название>

Изменение названия операционной системы, загружаемой по умолчанию:

bcdedit /set {default} description <новое название>

Изменение названия загрузчика предыдущих версий Windows:

bcdedit /set {ntldr} description <новое название>

Изменение названия остальных пунктов меню:

bcdedit /set <{GUID-номер}> description <новое название>

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

bcdedit /set {bootmgr} locale <локализация, например, ru-RU, en-US, FI-FI, DE-DE>

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

bcdedit /default <{GUID-номер}>

bcdedit /timeout <интервал ожидания выбора пользователя>

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

bcdedit /create {ntldr} /d «Загрузчик ОС прежних версий»

bcdedit /set {ntldr} device partition <буква диска, содержащего загрузчик ntldr>:

bcdedit /set {ntldr} path ntldr

bcdedit /displayorder {ntldr} /addlast

Опция PAE используется в 32-битных системах для расширения доступного им адресного пространства. Включить ее можно так:

bcdedit /set <{GUID-номер}> pae ForceEnable

Отключить же данную опцию можно при помощи следующей команды:

bcdedit /set <{GUID-номер}> pae ForceDisable

Создание записи в списке программ поддержки загрузочного меню (находится под списком установленных версий Windows, и перейти к нему можно при помощи клавиши TAB) проще всего выполнить методом копирования стандартной записи с идентификатором {memdiag}. Для этого достаточно воспользоваться следующей командой, после выполнения которой перед вами отобразится сообщение об успешном создании нового элемента списка, который имеет идентификатор <{идентификатор}>. В дальнейшем значение <{идентификатор}> нам еще пригодится.

bcdedit /copy {memdiag} /d «Наша новая запись»

#настраиваем созданную нами запись.

bcdedit /set <{идентификатор}> path <путь к запускаемой программе без указания раздела диска>

bcdedit /set <{идентификатор}> device partition=<буква диска, на которой находится запускаемая при помощи данной записи программа>

#добавляем созданный нами элемент к текущему списку загрузочного меню.

bcdedit /toolsdisplayorder <{идентификатор}> /addlast

По умолчанию загрузочное меню Windows Vista запрещает выполнение программ поддержки, не имеющих цифровой подписи. Чтобы отключить проверку цифровых подписей программ, воспользуйтесь соответствующей командой в списке дополнительных вариантов загрузки операционной системы (отображается после нажатия кнопки F8).

Получение справки о программе bcdedit.exe

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

Общую справку об этой программе можно получить при помощи стандартной команды bcdedit.exe /?.

Более подробную справку по определенной команде и ее использованию (а также примеры ее использования) можно получить при помощи команды bcdedit.exe /? <команда>. Например, команда bcdedit.exe /? /set отобразит описание опций редактирования значений атрибутов элемента загрузочного меню.

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

  • bcdedit /? FORMATS. Отображает описание типов значений, которые могут принимать атрибуты, используемые элементами загрузочного меню Windows Vista.
  • bcdedit /? TYPES. Отображает описание основных атрибутов, которые можно устанавливать при помощи программы bcdedit.exe.
  • bcdedit /? ID. Отображает описание основных предопределенных идентификаторов, которые можно использовать в программе bcdedit.exe.

Parad0x

Robo User
Web-droid editor

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *