Восстановление и настройка загрузчика Windows 7
Иногда бывает, что совершенно из ничего вырастает целая проблема. В моем домашнем компьютере было установлено два жестких диска. На один из них я когда-то ради интереса поставил еще первый релиз Windows 7, а на втором стояла Windows XP. Прошло чуть больше года после этого, и я решил окончательно отказаться от XP, а на освободившееся место поставить Линукс. Семерку было решено оставить там же, на втором диске, просто обновив до финальной версии. Так получилось, что виндовый загрузчик прописался у меня на диске с Windows 7, и когда пришло время этот диск менять, запустить Семерку, установленную в другой раздел, оказалось невозможно. Нужно было перенести загрузчик. Во времена ХР мы прекрасно пользовались консолью восстановления с командой fixmbr и редактировали boot.ini., но с выходом Висты загрузчик обновился, и теперь поменять загрузочную конфигурацию стало немного сложнее. Что делать для восстановления загрузки Windows 7 и как ее конфигурировать, вы узнаете из этой статьи.
Восстановление загрузчика
Итак, первым делом новый раздел, на который вы хотите перенести загрузчик, должен быть активным. Это очень часто встречаемый подводный камень, который почему-то разработчики Microsoft не предусмотрели в своих утилитах. Сделать раздел активным поможет, например, программа
EASEUSPartitionMaster 4 (http://www.easeus.com/product.htm#Title2), которая полностью совместима с Windows 7. Нужно обязательно перезагрузиться. Теперь нам понадобится установочный диск. Желательно с той версией системы, которая стоит у вас, потому что разработчики зачем-то ввели проверку на совместимость. Загружаемся с диска, выбираем язык и ставим переключатель Use recovery tools that can help fix problems starting Windows. Нажимаем «Далее», перед нами встроенные средства для восстановления системы. Нам нужна командная строка. Теперь начинаем шаманить:
bootsect /nt60 C: /force
Программа bootsect обновляет основной загрузочный код разделов диска. Также обеспечивает переключение между новым загрузчиком Bootmgr и загрузчиком предыдущих версий Windows (ntldr). Теперь выполняем три команды:
bootrec /fixmbr
Эта команда помогает также, если вам нужно удалить код другого загрузчика с диска, например GRUBили Lilo.
bootrec /fixboot
Эта опция также поможет, если вы установили, например, Windows XP после Windows 7. После этого управление вновь получит загрузчик Windows 7.
bootrec /rebuildbcd
Эта опция пересоздает файл конфигурации загрузчика.
И последний штрих:
bcdboot C:\Windows
Вот таким образом можно перенести загрузчик bootmgr на другой раздел/диск.
Конфигурирование
Новое средство для редактирования конфигурации загрузчика называется bcdedit. Вот он, новый boot.ini:). Теперь информация о загрузке хранится в хранилище (store), управлять которым нам предлагают из консоли.
Параметры командной строки программы bcdedit для работы с хранилищем:
Пример редактирования записи в хранилище:
bcdedit /set description “Windozzz Seven”
Изменяем название системы по умолчанию в загрузчике.
bcdedit /set device partition=C:
Устанавливаем, с какого диска загружаемся. Создать новую запись в хранилище можно так:
bcdedit /create {bootmgr} /d "Windows Vista"
bcdedit /set {bootmgr} device partition=D:
bcdedit /set {bootmgr} path \bootmgr
bcdedit /displayorder {bootmgr} /addlast
Точно так же можно добавить запись об установленной Windows XP, если заменить загрузчик bootmgr на ntldr. Подробнее про параметры bcdedit можно прочитать здесь: http://technet.microsoft.com/en-us/library/cc709667(WS.10).aspx (на английском) и здесь: http://netler.ru/pc/bcdedit.htm (на русском). Для более простого редактирования можно использовать фронтенд bcdedit – EasyBCD (http://neosmart.net/dl.php?id=1). Это бесплатная программка, которая делает то же самое и немного больше.
Например, она поможет пересоздать отсутствующие или поврежденные загрузочные файлы (аналог того, что делает bcdboot), сбросить bcd-хранилище на дефолтное состояние, добавлять/удалять записи в хранилище и еще несколько приятных мелочей.
Заключение
С новым загрузчиком все, конечно, усложнилось, но полчаса поиска в Google, как всегда, снимают все основные вопросы. Надеюсь, что данный материал будет вам полезен. Его, например, можно вырезать из газеты и брать с собой как памятку, когда вашему другу понадобится помощь. За этим прощаюсь. До встречи на страницах КГ.
Алексей Голованов, Минск 2010
Восстановление загрузчика
Итак, первым делом новый раздел, на который вы хотите перенести загрузчик, должен быть активным. Это очень часто встречаемый подводный камень, который почему-то разработчики Microsoft не предусмотрели в своих утилитах. Сделать раздел активным поможет, например, программа
EASEUSPartitionMaster 4 (http://www.easeus.com/product.htm#Title2), которая полностью совместима с Windows 7. Нужно обязательно перезагрузиться. Теперь нам понадобится установочный диск. Желательно с той версией системы, которая стоит у вас, потому что разработчики зачем-то ввели проверку на совместимость. Загружаемся с диска, выбираем язык и ставим переключатель Use recovery tools that can help fix problems starting Windows. Нажимаем «Далее», перед нами встроенные средства для восстановления системы. Нам нужна командная строка. Теперь начинаем шаманить:
bootsect /nt60 C: /force
Программа bootsect обновляет основной загрузочный код разделов диска. Также обеспечивает переключение между новым загрузчиком Bootmgr и загрузчиком предыдущих версий Windows (ntldr). Теперь выполняем три команды:
bootrec /fixmbr
Эта команда помогает также, если вам нужно удалить код другого загрузчика с диска, например GRUBили Lilo.
bootrec /fixboot
Эта опция также поможет, если вы установили, например, Windows XP после Windows 7. После этого управление вновь получит загрузчик Windows 7.
bootrec /rebuildbcd
Эта опция пересоздает файл конфигурации загрузчика.
И последний штрих:
bcdboot C:\Windows
Вот таким образом можно перенести загрузчик bootmgr на другой раздел/диск.
Конфигурирование
Новое средство для редактирования конфигурации загрузчика называется bcdedit. Вот он, новый boot.ini:). Теперь информация о загрузке хранится в хранилище (store), управлять которым нам предлагают из консоли.
Параметры командной строки программы bcdedit для работы с хранилищем:
Ключ | Описание |
/createstore | Создает новое пустое хранилище данных конфигурации загрузки. Созданное хранилище не является системным. |
/export | Экспортирует содержимое системного хранилища в файл. Этот файл можно использовать в дальнейшем для восстановления определенного состояния системного хранилища. |
/import | Восстанавливает состояние системного хранилища с помощью файла данных резервной копии, созданного с помощью параметра /export. Эта команда удаляет существующие записи в системном хранилище перед выполнением операции импорта. |
/store | |
Этот параметр может быть использован с любой командой BCDedit для определения используемого хранилища. Если параметр не указан, программа BCDEdit работает с системным хранилищем. | |
/create | |
Создает новую запись в хранилище данных конфигурации загрузки. | |
/delete | |
Удаляет элемент в определенной записи. | |
/enum | Показывает список записей в хранилище. |
/displayorder | Указывает последовательность, используемую диспетчером загрузки при отображении параметров загрузки. |
/timeout | Указывает время ожидания в секундах перед выбором диспетчером загрузки записи по умолчанию. |
/set | Установка значения элемента. |
Пример редактирования записи в хранилище:
bcdedit /set description “Windozzz Seven”
Изменяем название системы по умолчанию в загрузчике.
bcdedit /set device partition=C:
Устанавливаем, с какого диска загружаемся. Создать новую запись в хранилище можно так:
bcdedit /create {bootmgr} /d "Windows Vista"
bcdedit /set {bootmgr} device partition=D:
bcdedit /set {bootmgr} path \bootmgr
bcdedit /displayorder {bootmgr} /addlast
Точно так же можно добавить запись об установленной Windows XP, если заменить загрузчик bootmgr на ntldr. Подробнее про параметры bcdedit можно прочитать здесь: http://technet.microsoft.com/en-us/library/cc709667(WS.10).aspx (на английском) и здесь: http://netler.ru/pc/bcdedit.htm (на русском). Для более простого редактирования можно использовать фронтенд bcdedit – EasyBCD (http://neosmart.net/dl.php?id=1). Это бесплатная программка, которая делает то же самое и немного больше.
Например, она поможет пересоздать отсутствующие или поврежденные загрузочные файлы (аналог того, что делает bcdboot), сбросить bcd-хранилище на дефолтное состояние, добавлять/удалять записи в хранилище и еще несколько приятных мелочей.
Заключение
С новым загрузчиком все, конечно, усложнилось, но полчаса поиска в Google, как всегда, снимают все основные вопросы. Надеюсь, что данный материал будет вам полезен. Его, например, можно вырезать из газеты и брать с собой как памятку, когда вашему другу понадобится помощь. За этим прощаюсь. До встречи на страницах КГ.
Алексей Голованов, Минск 2010
Компьютерная газета. Статья была опубликована в номере 30 за 2010 год в рубрике ос