В этой статье мне хотелось бы обобщить способы редактирования меню загрузки операционных систем на основе данных хранилища загрузки (Boot Configuration Data - BCD), которое используется в операционных системах Microsoft, начиная от Windows Vista. Его невозможно отредактировать с помощью текстового редактора, как это можно было сделать с boot.ini в Windows XP. Однако, редактирование BCD возможно с помощью консольной программы bcdedit.exe, находящейся в системной папке Windows\System32. Также с ней можно работать в командной строке среды восстановления. Для работы с этой программой необходимо обладать правами администратора. Я не преследую цель подробно описать каждую микрокоманду или идентификатор, а остановлюсь только на тех, которые могут понадобиться обычному пользователю.
Чтобы открыть окно "Конфигурация системы", нажмите кнопку "Пуск" и клавишу с буквой R (далее - Win+R). В строке "Выполнить" наберите msconfig , нажмите Enter. Откроется окно конфигурации системы. Перейдите на вкладку "Загрузка".
Данный инструмент дает возможность:
В верней части открывшейся вкладки находится поле со списком операционных систем. Справа каждой записи добавлен комментарий об операционной системе, в которую выполнен вход, и системе, загружаемой по умолчанию.
Для изменения системы, загружаемой по умолчанию, выберите в поле списка запись о нужной операционной системе и нажмите кнопку "Загружать по умолчанию". В результате выполненной операции справа от названия появится соответствующий комментарий.
Редактирование таймаута труда не составляет: в нужном поле нужно установить желаемое количество секунд.
Для удаления ненужной записи выберите ее из списка и нажмите кнопку "Удалить".
После выполнения всех действий нажмите кнопку "Применить" и закройте окно конфигурации системы. Вам будет предложено перезагрузить компьютер, однако, если острой необходимости в этом нет, выберите кнопку "Выйти без перезагрузки". Изменения вы увидите во время следующей загрузки компьютера.
Несколько замечаний. С помощью данного инструмента нельзя:
Один из способов, позволяющий игнорировать запись о несуществующей системе в меню загрузки: установите текущую систему загружаемой по умолчанию, а таймаут установите равным нулю.
Открыть окно "Загрузка операционной системы" можно так: Пуск - "Панель управления\Все элементы панели управления\Система" или, если включено отображение элементов управления Панели инструментов по категориям: "Панель управления\Система и безопасность\Система". Далее: "Дополнительные параметры системы", в открывшемся окне перейдите на вкладку "Дополнительно". Также можете воспользоваться возможностями поиска Windows 7 и в поле поиска написать " Расш ", в открывшемся списке выбрать "Просмотр расширенных параметров системы". В рамке "Загрузка и восстановление" нажмите кнопку "Параметры". Нас будет интересовать верхняя часть окна: "Загрузка".
С помощью данного окна вы сможете:
Как мы видим, данный инструмент не особо отличается от предыдущего, за исключением нескольких деталей. И если в Windows XP была кнопка "Правка", нажав на которую пользователь имел возможность самостоятельно править загрузочное меню, то, начиная с Windows Vista, такой простой способ отсутствует. С помощью данного меню вам так же недоступны функции удаления записей из меню загрузки, их переименование, изменение их положения и удаление.
Программа bcdedit.exe - тот инструмент, который позволяет делать с вашим меню загрузки все, что вам нужно. Хочу предупредить: необдуманные и неправильные действия могут привести к невозможности загрузки операционных систем. Поэтому, прежде чем приступать, подготовьте установочный диск с операционной системой, создайте диск восстановления, сделайте резервную копию данных хранилища загрузки.
Создайте на любом из разделов папку для резервной копии. Назовите ее BCDREZ. Выполните:
где X - буква раздела с находящейся на нем папкой BCDREZ.
В любом случае вы сможете вернуться к исходной точке, выполнив экспорт BCD из резервной копии:
Напомню еще раз - все команды этой утилиты выполняются в командной строке, запущенной с правами администратора или в командной строке среды восстановления.
Для того, чтобы грамотно вносить изменения, нужно познакомиться со структурой того, куда эти изменения вносятся. Информация о BCD представлена в виде двух столбцов: в левом столбце расположены названия параметров, а в правом - их значения. Повторюсь, что не буду уделять внимание всем параметрам, а остановлюсь лишь на тех, которые касаются меню загрузки. Чтобы увидеть ту часть BCD, которая отвечает за загрузку операционных систем, установленных на вашем компьютере, и их отображение в меню загрузки, выполните:
Некоторые значения параметров BCD записаны в фигурных скобках - <>. Это идентификаторы - ID. Любой идентификатор имеет буквенно-цифровой код вида . Стандартные идентификаторы имеют названия, например:
Остановимся на параметрах, которые нас интересуют:
Это, конечно, далеко не полный, но, в рамках данной статьи, вполне достаточный перечень.
Все команды bcdedit.exe, в которых отсутствует команда set с дальнейшим указанием идентификатора, выполняются для диспетчера загрузки. Вы должны это помнить, потому что, желая что-то изменить в записи операционной системы и забыв указать ее идентификатор, вы вносите изменения в диспетчер. Хорошо, если все ограничится "восстановлением запуска".
Прежде чем продолжить, допустим, что наше меню загрузки содержит три записи с идентификаторами
Здесь все просто - в зависимости от того, какую систему мы хотим загружать по умолчанию, ID той системы и пишем в команде. Например, для системы с ID2 команда:
Но эта команда не перемещает запись о системе, загружаемой по умолчанию, на верхнюю строчку меню загрузки.
Существует 3 способа изменить расположение записей:
где XX - время в секундах.
где ln-Ln - выбранное обозначение языка. Для русского - это ru-Ru, для английского - en-Us, для немецкого - de-De, для украинского - uk-UA и т.д.
Здесь нужно сделать оговорку. После операции восстановления запуска параметры диспетчера загрузки становятся англоязычными, несмотря на то, что значение параметра locale не изменяется. Как исправить ситуацию, смотрите здесь.
Эту команду лучше использовать для временного исключения записи загрузки из меню. При выполнении этой команды запись о параметрах выбранной системы не удаляется из BCD и при необходимости может быть восстановлена любой из вышеназванных команд bcdedit /displayorder.
Так как изменения касаются конкретных записей, в команде обязательно должен быть ID этой записи.
Такая необходимость обычно возникает после использования среды восстановления, когда после названия операционной системы появляется дописка - (восстановлено), или когда хочется исправить "Предыдущая версия Windows" на более понятное "Windows XP".
где X - буква раздела жесткого диска.
Как правило значения device и osdevice совпадают.
Для изменения языка меню дополнительных вариантов загрузки (при нажатии F8 после наведения на строку меню с нужной операционной системой) выполните команду с указанием ID операционной системы:
что такое ln-Ln - описано выше.
Вариантов для выполнения этой процедуры много, но остановимся на самых популярных или нетрудоемких. Если добавляемая система - Windows Vista или Windows 7 можно автоматизировать процесс, воспользовавшись средой восстановления и одной из ее опций - "восстановление запуска". В этом случае в BCD будет создана новая запись о загрузке и добавлен пункт меню в диспетчер загрузки. Такой же эффект вы получите при использовании команды:
Если утилита найдет на компьютере операционную систему, запись о которой отсутствует в BCD, такая запись также будет создана.
Здесь я всего лишь объединю выполняемые команды:
Можно воспользоваться методом, описанным выше, то есть начать с команды:
Но этот способ трудоемок и не лишен вероятности сделать многочисленные ошибки. Проще воспользоваться копированием уже существующей записи и изменить значения параметров device и osdevice на соответствующие добавляемой операционной системе. Допустим, что вы работаете в Windows 7. Выполните:
в результате выполнения команды вы получите сообщение "Запись успешно скопирована в <хххххххх-хххх-хххх-хххх-хххххххххххх>". Далее выполните:
где X - буква раздела, на котором находится операционная система. Код, который обозначен крестиками, вводите внимательно, а лучше скопируйте и вставляйте в команды с помощью правой кнопки мыши. Наконец, выполните команду, добавляющую новую запись в диспетчер загрузки:
Как вы понимаете, запись будет добавлена внизу существующего списка.
Если вы установили Windows 7 на виртуальный жесткий диск и хотите добавить запись в диспетчер загрузки, воспользуйтесь способом, описанным выше, но с учетом особенностей загрузки с VHD. Полученный после выполнения команды bcdedit /copy… буквенно-цифровой код в командах обозначен как
где X:\DIR\filename.vhd - полный путь к файлу VHD и указание имени файла.
Удаление записи об установленной операционной системе из BCD и диспетчера загрузки выполняется с помощью команды bcdedit /delete
Если же ID записывается в буквенно-цифровом коде, ключ /f не нужен. При выполнении этой команды данные об удаляемой операционной системе удаляются и из BCD, и из диспетчера загрузки. В этом ее основное отличие от команды