Эта статья применима к Windows 7 и новее на дисках с разметкой MBR.
Аннотация
Начальные условия: в вашей системе более одного жесткого диска. На одном из них уже установлена операционная система, а на второй вы установили Windows 7. Возникла необходимость удалить из системы жесткий диск, на котором Windows 7 не установлена. Но оказалось, что без этого диска ваша система загружаться не хочет.
Это произошло потому, что перестало соблюдаться одно из трех условий успешной загрузки:
- раздел, с которого выполняется загрузка, должен быть активным;
- загрузочный сектор раздела должна быть совместим с bootmgr;
- на активном разделе должны находиться файлы загрузки операционной системы. Для Windows 7 это файл bootmgr и хранилище данных конфигурации загрузки (BCD), находящееся в скрытой и системной папке Boot.
Рассмотрим решение проблемы на примере конфигурации, представленной на рисунке
Увеличить рисунок
На скриншоте "Управления дисками" видно, что диск C:, на котором установлена Windows 7, не активен. Активным является диск D:. Файлов загрузки Windows 7 (они скрытые и системные) на диске C: так же не обнаружится. Задача: перенести загрузчик с диска D: на диск C:, то есть обеспечить соблюдение вышеназванных условий.
Использование установочного диска или диска восстановления Windows 7
При наличии этих дисков перенос загрузочных файлов не составляет труда. Физически отключите "ненужный" жесткий диск, загрузитесь с диска, установив в BIOS привод CD-DVD первым загрузочным устройством, войдите в среду восстановления. После того, как закончится сканирование и поиск установленных операционных систем, выполните "Восстановление запуска". Программа восстановления подготовит нужным образом жесткий диск и скопирует на него необходимые файлы. После перезагрузки возможность загрузки будет восстановлена.
Если у вас нет ни установочного диска, ни диска восстановления, можно воспользоваться способом, описанным ниже.
Перенесение файлов загрузки с использованием утилиты bcdboot.exe
Условно можно разделить предстоящую операцию на три этапа, соответствующих трем необходимым условиям успешной загрузки.
Первый: войдите в оснастку "Управление дисками" (Win + R, в строке "Выполнить" наберите diskmgmt.msc и нажмите OK) и посмотрите, какая буква присвоена первому слева разделу диска, который планируется оставить. Именно этот раздел мы сделаем загрузочным и активным: щелкните правой кнопкой мыши по выбранному разделу и выберите пункт контекстного меню "Сделать раздел активным". Учтите, что этот раздел должен иметь атрибут "основной".
Второй: запустите командную строку с правами администратора. Все команды, о которых пойдет речь далее, будут выполняться последовательно без выхода из командной строки.
DISKPART
list disk
sel disk X
list partition
sel part 1
active
exit
где X - номер диска, который предполагается оставить, в списке дисков (команда list disk).
Для этого понадобится утилита bootsect.exe, которую, при отсутствии установочного диска, можно взять здесь. Заранее скачайте и распакуйте ее, например, в корневой каталог раздела C:.
c:\bootsect /nt60 All /force
примечание: опыт показывает, при наличии в конфигурации 2-х и более HDD ключ /force необходим.
bcdboot %Windir% /l ru-Ru /s C:
- ключ /l - выбор языковых параметров менеджера загрузки. Если ваша система не русскоязычная, используйте другие значения этого ключа, например, для английского языка - en-Us, для немецкого - de-DE, и т.д.
- ключ /s - определяет букву тома, назначенную целевому системному разделу, в который копируются файлы среды загрузки. Это раздел, который мы сделали активным. Так как микропрограмма команды по умолчанию использует текущий системный раздел (до извлечения жесткого диска - это раздел D:), применение этого ключа с буквой предполагаемого загрузочного раздела - обязательно!
- Делаем диск активным. Есть два способа сделать нужный раздел активным.
- Перезаписываем загрузочный сектор (делаем его совместимым с bootmgr):
- Переносим BCD и файл bootmgr на новый активный раздел:
Проверяем и редактируем BCD
Выполните команду
bcdedit /store C:\boot\bcd
Увеличить рисунок
По результатам выполнения команды проверьте параметры (подчеркнуты на скриншоте):
- в секции "Диспетчер загрузки Windows" параметр device должен быть равен букве нового активного раздела, в нашем случае - C:.
- в секции "Загрузка Windows" параметры device и osdevice должны быть равны букве раздела, на котором сейчас расположены каталоги Windows. В нашем случае, это тоже C:.
- в случае несоответствия внесите необходимые изменения с помощью команд:
bcdedit /store C:\boot\bcd /set {bootmgr} device partition=C:
bcdedit /store C:\boot\bcd /set {current} device partition=C:
bcdedit /store C:\boot\bcd /set {current} osdevice partition=C:
Обычно выполнение команд не требуется, но проверить не помешает. Вместо идентификатора {current} может быть {default}, или вообще буквенно-цифровой. Тогда в командах нужно использовать тот, который используется для загрузки.
Таким образом, перенесение файлов загрузки на другой диск - не такая сложная задача.
Вместо заключения, или "Русскоязычное меню мультизагрузки"
В связи с тем, что программа восстановления запуска, выполняющаяся из среды восстановления, использует параметры "по-умолчанию", язык менеджера загрузки становится английским. При наличии одной загружаемой системы это не заметно, а при наличии меню мультизагрузки - бросается в глаза. Если вас это не устраивает, выполните в командной строке:
bcdboot %Windir% /l ru-Ru
Выполнить ее нужно уже после перенесения файлов загрузки в новый раздел.
Статья опубликована в рамках конкурса "Наш выбор - Windows 7!". Оригинальный стиль автора сохранен.