Редактирование меню загрузки, или куда пропал boot.iniИсточник: oszone
ВведениеВ этой статье мне хотелось бы обобщить способы редактирования меню загрузки операционных систем на основе данных хранилища загрузки (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Программа bcdedit.exe - тот инструмент, который позволяет делать с вашим меню загрузки все, что вам нужно. Хочу предупредить: необдуманные и неправильные действия могут привести к невозможности загрузки операционных систем. Поэтому, прежде чем приступать, подготовьте установочный диск с операционной системой, создайте диск восстановления, сделайте резервную копию данных хранилища загрузки. Создайте на любом из разделов папку для резервной копии. Назовите ее BCDREZ. Выполните: bcdedit /export X:\BCDREZ\bcd где X - буква раздела с находящейся на нем папкой BCDREZ. В любом случае вы сможете вернуться к исходной точке, выполнив экспорт BCD из резервной копии: bcdedit /import X:\BCDREZ\bcd Напомню еще раз - все команды этой утилиты выполняются в командной строке, запущенной с правами администратора или в командной строке среды восстановления. Анализ данных и параметры хранилища загрузкиДля того, чтобы грамотно вносить изменения, нужно познакомиться со структурой того, куда эти изменения вносятся. Информация о BCD представлена в виде двух столбцов: в левом столбце расположены названия параметров, а в правом - их значения. Повторюсь, что не буду уделять внимание всем параметрам, а остановлюсь лишь на тех, которые касаются меню загрузки. Чтобы увидеть ту часть BCD, которая отвечает за загрузку операционных систем, установленных на вашем компьютере, и их отображение в меню загрузки, выполните: bcdedit Некоторые значения параметров BCD записаны в фигурных скобках - {}. Это идентификаторы - ID. Любой идентификатор имеет буквенно-цифровой код вида {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}. Стандартные идентификаторы имеют названия, например: {default}, {bootmgr}, {ntldr} и так далее. Остановимся на параметрах, которые нас интересуют:
Это, конечно, далеко не полный, но, в рамках данной статьи, вполне достаточный перечень. Все команды bcdedit.exe, в которых отсутствует команда set с дальнейшим указанием идентификатора, выполняются для диспетчера загрузки. Вы должны это помнить, потому что, желая что-то изменить в записи операционной системы и забыв указать ее идентификатор, вы вносите изменения в диспетчер. Хорошо, если все ограничится "восстановлением запуска". Прежде чем продолжить, допустим, что наше меню загрузки содержит три записи с идентификаторами {ID1}, {ID2}, {ID3}. Изменение системы, загружаемой по умолчаниюЗдесь все просто - в зависимости от того, какую систему мы хотим загружать по умолчанию, ID той системы и пишем в команде. Например, для системы с ID2 команда: bcdedit /default {ID2} Но эта команда не перемещает запись о системе, загружаемой по умолчанию, на верхнюю строчку меню загрузки. Изменение расположения записей в меню загрузкиСуществует 3 способа изменить расположение записей:
bcdedit /displayorder {ID} /addlast bcdedit /displayorder {ID} /addfirst bcdedit /displayorder {ID3} {ID1} {ID2} Изменение таймаутаbcdedit /timeout XX где XX - время в секундах. Изменение языка диспетчера загрузкиbcdedit /locale ln-Ln где ln-Ln - выбранное обозначение языка. Для русского - это ru-Ru, для английского - en-Us, для немецкого - de-De, для украинского - uk-UA и т.д. Здесь нужно сделать оговорку. После операции восстановления запуска параметры диспетчера загрузки становятся англоязычными, несмотря на то, что значение параметра locale не изменяется. Как исправить ситуацию, смотрите здесь. Удаление записи о загрузке системы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 или Windows 7Можно воспользоваться методом, описанным выше, то есть начать с команды: 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:\DIR\filename.vhd bcdedit /set {ID} osdevice vhd= X:\DIR\filename.vhd bcdedit /set {ID} detecthal on bcdedit /displayorder {ID} /addlast где X:\DIR\filename.vhd - полный путь к файлу VHD и указание имени файла. Удаление записи загрузки системы из BCD и диспетчера загрузкиУдаление записи об установленной операционной системе из BCD и диспетчера загрузки выполняется с помощью команды bcdedit /delete {ID}. Есть особенность выполнения команды: если в качестве ID указывается известная запись, например {ntldr}, то команда должна выполняться с ключом /f: bcdedit /delete {ntldr} /f Если же ID записывается в буквенно-цифровом коде, ключ /f не нужен. При выполнении этой команды данные об удаляемой операционной системе удаляются и из BCD, и из диспетчера загрузки. В этом ее основное отличие от команды bcdedit /displayorder {ID} /remove ЗаключениеУправление загрузкой Windows 7 отличается от того, которое использовалось в Windows XP/2000. Некоторые параметры меню загрузки можно изменить в графическом интерфейсе операционной системы, но наибольшие возможности предоставляет утилита командной строки bcdedit.exe. Дополнительную информацию о возможностях программы, командах и параметрах можно получить из встроенной справки: bcdedit /? |