суббота, 23 января 2010 г.

Восстановление совместной загрузки Windows 7 и Windows XP при переустановке одной из них

Аннотация

Статья рассчитана на пользователей, знакомых с такими понятиями, как, например, работа в командной строке с правами администратора и умеющими включать отображение скрытых и системных файлов и папок. Желательно знание процесса установки и особенностей установки Windows XP после Windows 7. Статья не претендует на универсальность, то есть в ней рассматриваются операционные системы компании Microsoft: от Windows XP до Windows 7.

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

Введение

Как показывает практика, пользователи сталкиваются со значительными трудностями при переустановке одной из операционных систем при наличии нескольких на одном компьютере. Данная статья будет интересна прежде всего тем, у кого загрузка реализована в виде загрузочного меню (а не выбором загрузочного устройства в BIOS). Цель - рассказать о необходимых предварительных действиях для облегчения процесса воссоздания меню мультизагрузки после переустановки одной из операционных систем.

Немного теории

Загрузка операционной системы происходит с активного раздела жесткого диска. К сожалению, диспетчер дисков не всегда дает исчерпывающую информацию об активности. Косвенным признаком может служить наличие файлов загрузки операционных систем. Но более точно определить активность раздела можно как с помощью сторонних программ типа Acronis Disk Director Suite (активный раздел будет помечен так называемым "флагом активности"), так и воспользоваться имеющейся в Windows программой DiskPart.

Запустите командную строку и далее последовательно выполните команды:

Diskpart
sel disk 0
sel part 1
detail part


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



*


Увеличить рисунок



Рисунок 1 - работа с программой DiskPart



Кроме этого для успешной загрузки необходимо:




  • наличие Главной Загрузочной Записи (Master Boot Record - MBR), совместимой с загрузчиком операционной системы (ntldr - для Windows XP и bootmgr - для Windows 7/Vista);


  • наличия в корневом каталоге активного раздела других файлов загрузки: для Windows XP - файлов ntdetect.com и boot.ini, для Windows 7/Vista - хранилища загрузки - Boot Configuration Data (BCD), которое расположено в скрытой системной папке BOOT;


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



Невыполнение хотя бы одного из этих условий


сделает загрузку одной или нескольких операционных систем невозможной!



*



Рисунок 2 - файлы загрузки Windows XP и Windows 7 на активном разделе



Красным подчеркнуты файлы загрузки Windows 7, синим - файлы загрузки Windows XP



Необходимые инструменты




  1. Загрузочный диск с операционной системой Windows XP;


  2. Загрузочный диск с операционной системой Windows 7;


  3. Утилита bootsect.exe, которая находится в папке BOOT на дистрибутивном диске с Windows 7. В случае отсутствия такового, её можно взять здесь bootsect.zip.



Часть 1. Переустановка операционной системы, находящейся на неактивном разделе



Конфигурация 1: Windows 7 на активном разделе, переустанавливаем Windows XP



  1. Утилиту bootsect.exe поместите на раздел с Windows 7;


  2. Загрузитесь с установочного диска Windows XP. После появления приглашения установить систему, выберите тот, на котором она раньше находилась, выполните его форматирование и установку;


  3. После установки возможность выбора операционных систем для загрузки пропадет. Для того, чтобы вернуть такую возможность, в командной строке выполните:
    X:\bootsect /nt60 All


    где Х - буква раздела с Windows 7, или



    X:\BOOT\bootsect /nt60 All


    где Х - буква привода DVD-ROM с установленным в него дистрибутивным диском Windows 7;




  4. Перезагрузитесь



Конфигурация 2: Windows XP на активном разделе, переустанавливаем Windows 7



  1. Создайте на разделе с Windows XP папку BCDREZ


  2. В Windows 7 в командной строке с правами администратора выполните:
    bcdedit /export X:\BCDREZ\bcd


    где X - буква раздела с Windows XP



    Если вы не можете загрузиться в Windows 7, то данную команду можно выполнить в Windows XP:



    Y:\Windows\System32\bcdedit /export X:\BCDREZ\bcd


    где Y - буква раздела с Windows 7, X - с Windows XP;




  3. Выполните установку Windows 7, при необходимости отформатируйте раздел, в который будет выполняться установка.

    После установки в меню загрузки появится новая запись о загрузке. Откорректировать меню можно различными средствами, но мы воспользуемся одним: вернем сохраненную запись.




  4. В Windows 7 в командной строке с правами администратора выполните:
    bcdedit /import X:\BCDREZ\BCD




где Х - буква раздела с Windows XP.



После перезагрузки вы получите прежнее загрузочное меню.



Часть 2. Переустановка операционной системы, находящейся на активном разделе



Конфигурация 1: переустанавливаем Windows 7 на активном разделе, Windows XP - на неактивном


Возможны два варианта:



Первый: при установке Windows 7 скрытый раздел System Recovery не образовался.


После форматирования активного раздела в данном случае, вы лишитесь возможности загружаться в Windows XP, так как файлы загрузки будут удалены. Во избежание сложностей, в Windows 7 выполните несколько нехитрых действий:




  1. На разделе с Windows XP создайте папку BOOTREZ;


  2. Откройте отображение скрытых и системных файлов, скопируйте файлы загрузки XP: ntldr, ntdetect.com, boot.ini, желательно дополнительно скопировать файл bootfont.bin для корректного отображения кириллицы в меню загрузки;


  3. Экспортируйте BCD командой:

    bcdedit /export X:\BOOTREZ\bcd


    где X - буква раздела с Windows XP




  4. Установите Windows 7;


  5. После установки откройте отображение скрытых и системных файлов, скопируйте из созданной папки BOOTREZ файлы загрузки XP: ntldr, ntdetect.com, boot.ini, bootfont.bin на активный раздел;


  6. Импортируйте сохраненные данные загрузки командой:



bcdedit /import X:\BOOTREZ\bcd


где Х - буква раздела с Windows XP



Второй: при установке Windows 7 скрытый раздел System Recovery был создан.


*


Увеличить рисунок



Рисунок 3 - предложение выбрать для установки второй раздел



В этом случае активным является раздел System Recovery, поэтому если вы ограничитесь форматированием дискового пространства, ранее занятого Windows 7, то после перезагрузки ничего не потеряется. Единственное действие, которое вам придется выполнить - с помощью утилиты bcdedit изменить название "Ранней версии операционной системы", да и то по желанию:



bcdedit /set {ntldr} description "Пишите, что хотите"


Конфигурация 2: Windows XP на активном разделе, Windows 7 - на неактивном



После форматирования активного раздела, вы потеряете не только меню загрузки операционных систем, но и саму возможность загрузки в Windows 7 даже после изменения MBR с помощью утилиты bootsect.exe, так как файл загрузки bootmgr и BCD будут удалены. Однако существует простой способ избежать трудностей.




  1. Создайте на разделе с Windows 7 папку для хранения копий файлов загрузки BCDREZ


  2. В Windows XP (это обстоятельство особенно важно, так как в Windows 7 вы не сможете выполнить подобную процедуру) скопируйте в созданную папку из корневого каталога активного раздела файл bootmgr и папку BOOT (не забывайте, что они скрытые и системные)


  3. Выполните переустановку Windows XP


  4. Откройте отображение скрытых и системных файлов, скопируйте из папки BCDREZ папку BOOT и файл bootmgr в корневой каталог активного раздела


  5. Выполните перезапись MBR:



X:\bootsect /nt60 All


где Х - буква раздела с Windows 7 или



X:\BOOT\bootsect /nt60 All


где Х - буква привода DVD-ROM с установленным в него дистрибутивным диском Windows 7



После перезагрузки вы вновь получите возможность загружаться в обе операционные системы.


Комментариев нет: