13

У меня есть ноутбук с Windows 7 64-разрядной версии Enterprise. Он уже заполнен большим количеством программного обеспечения и драйверов.

Ноутбук (Dell E6220) поддерживает загрузку через UEFI, но настаивал на устаревшей BIOS.

Когда я пытаюсь изменить загрузку с Legacy на UEFI, я получаю сообщение об ошибке, что загрузочное устройство не найдено (Windows 7 не распознает загрузочный). Есть ли способ настроить текущую установку, чтобы разрешить загрузку из UEFI, или мне нужно отформатировать и переустановить?

5 ответов5

8

Нет, вам не нужно форматировать и переустанавливать. Вы можете преобразовать свой диск, чтобы разрешить загрузку UEFI.

Для этого есть отличный проект с открытым исходным кодом: gptgen, который представляет собой "..tool для неразрушающего преобразования жестких дисков, разделенных по общей схеме MBR" в стиле MSDOS "(включая расширенные разделы), для использования таблицы разделов GUID (ГПТ) «.

Microsoft опубликовала хорошее руководство по этому процессу. Ниже приведены сокращенные инструкции (вы также можете использовать версию без сокращений). Этот процесс занял у меня менее 10 минут.

меры

  1. Сделайте резервную копию чего-нибудь важного. Мы собираемся внести некоторые серьезные изменения в жесткий диск.

  2. Создайте диск восстановления системы (или используйте исходный установочный носитель Windows).

  3. Идентификация жесткого диска, который вы хотите конвертировать. Вы можете использовать [Windows Disk Manager][4] чтобы сделать это. Обычно это диск № 0.

  4. Скачать gptgen. Это инструмент, который делает магию.

  5. Разархивируйте gptgen, запустите командную строку с правами администратора, а затем выполните следующую команду. ВНИМАНИЕ ! Вы сделали резервную копию своих данных, верно? Это точка невозврата.

gptgen.exe -w \\.\physicaldrive0

Вы можете увидеть синий экран после запуска вышеуказанной команды. Это нормально. Я сам не видел синий экран, и это тоже нормально.

  1. Загрузитесь с установочного диска Windows или диска восстановления системы.

  2. Выберите язык и настройки, а затем выберите « Восстановить компьютер» -> "Устранение неполадок" -> "Дополнительные параметры" -> "Командная строка".

  3. Мы собираемся использовать diskpart для завершения изменений на диске. Введите "diskpart" и нажмите Enter.

  4. Определите загрузочный диск, на котором находится Windows, набрав "list disk" и нажав Enter. Нечто подобное должно появиться:

  Disk ###  Status         Size     Free     Dyn  Gpt

  --------  -------------  -------  -------  ---  ---

* Disk 0    Online          128 GB      0 B        *
  1. После идентификации выберите диск (замените его на правильный номер) с помощью этой команды:

select disk 0

  1. Проверьте раздел:

list partition

Вы увидите что-то вроде:

   Partition ###  Type              Size     Offset

   -------------  ----------------  -------  -------

   Partition 1    Primary            350 MB  1024 KB

   Partition 2    Primary            126 GB   350 MB
  1. Удалить предыдущий системный раздел:

select partition 1

delete partition

  1. Создайте новый загрузочный раздел, зарезервированный раздел Microsoft:

create partition EFI size=100 offset=1

format quick fs=fat32 label="System"

assign letter=S

create partition msr size=128 offset=103424

  1. Если вы снова перечислите разделы, у вас должно получиться что-то вроде этого:
   Partition ###  Type              Size     Offset

   -------------  ----------------  -------  -------

   Partition 1    System             100 MB  1024 KB

   Partition 2    Reserved           128 MB   101 MB

   Partition 3    Primary            126 GB   229 MB
  1. Убедитесь, что ваша установка Windows смонтирована, заменив 3 на номер тома установки Windows (обычно 1):

list volume

select volume 3

assign letter=C

  1. Выход из диска:

exit

  1. Сгенерируйте данные загрузочного раздела, заменив C: буквой установки Windows (обычно C:):

bcdboot c:\windows /s s: /f UEFI

  1. Это оно! Вы можете перезагрузить компьютер прямо сейчас.
4

Преобразовать установку Windows из Legacy в UEFI:

Обратите внимание, что этот метод будет работать только для тех компьютерных систем, которые поддерживают прошивку UEFI. Пожалуйста, проверьте это сначала в настройках BIOS, а затем продолжите этот урок.

  • Шаг 1: Подтвердите, что ваша установка действительно в Legacy Mode. Нажмите WinKey + R, затем введите msinfo32 и нажмите ввод. Режим BIOS должен быть Legacy в System Summary.

  • Шаг 2: Загрузите диск восстановления системы и создайте с него загрузочный носитель. Загрузите диск отсюда. Смотрите инструкции по созданию загрузочного носителя. Это довольно тривиально, и можно следовать этому уроку.

  • Шаг 3: Перезагрузитесь в устаревшем режиме или в режиме UEFI, используя загрузочный носитель, созданный на шаге 2.
  • Шаг 4: Запустите команду: testdisk Используйте клавиши со стрелками для навигации. Выберите жесткий диск, на котором установлена ОС Windows в устаревшем режиме, и нажмите клавишу ввода. Выберите [EFI GPT] Карта разделов EFI GPT и нажмите ввод. Выберите Анализ и нажмите Enter. Выберите Быстрый поиск (внизу) и нажмите Enter. Выберите Продолжить (внизу) и нажмите Enter. Нажмите ввод снова. Выберите «Запись» (внизу) и нажмите «Ввод». Нажмите Y и нажмите Enter. Ваша таблица разделов изменилась с MBR на GPT.
  • Шаг 5: Перезагрузитесь в режиме UEFI с помощью носителя для восстановления / установки Windows.
  • Шаг 6: Откройте командную строку. Ярлык это: Shift + F10
  • Шаг 7: Запустите следующие команды:

    1. diskpart
    2. list disk - запишите номер диска, на котором находится ваша установка Windows. Допустим, это x
    3. select disk x
    4. list partition - обратите внимание на номер раздела, который содержит вашу установку Windows. Допустим, это y
    5. select partition y
    6. shrink minimum=200 desired=200
    7. create partition efi
    8. list partition - запишите номер раздела нового. Допустим, это z
    9. select partition z
    10. format fs = fat32
    11. assign letter = b:
    12. exit
    13. mkdir b:\EFI
    14. mkdir b:\EFI\Microsoft
    15. cd /d b:\EFI\Microsoft
    16. bootrec /fixboot
    17. diskpart
    18. list vol
    19. bcdboot c:\windows /l en-us /s b: /f ALL - Обратите внимание, что здесь c: обозначает букву раздела, в котором установлены окна. Давайте выясним это в первую очередь.
  • Шаг 8: перезагрузка. Тада! Готово! Проверьте, изменилась ли ваша установка в UEFI или нет.

Ссылка: Как преобразовать установку Windows 7/8/8.1 из Legacy в UEFI без потери данных!

Более простой способ использования gdisk: преобразование установки Windows 7/8/10 из прежней версии в UEFI без потери данных (более простой метод)

3

Windows 7 в UEFI требует, чтобы разделы диска использовали таблицу разделов GUID (GPT), а не традиционный формат разделов MBR, используемый в системах BIOS. К сожалению, Windows не предоставляет способа неразрушающего преобразования раздела MBR в раздел GPT.

Однако, если вы не против скопировать данные с вашего диска, преобразовать их, а затем скопировать обратно, вы можете использовать Windows, как описано в этой статье Microsoft Technet. Измените диск с основной загрузочной записью на диск с таблицей разделов GUID. В статье описываются две процедуры, каждая из которых требует создания копии данных и последующей модификации диска для использования GPT. Используя интерфейс Windows, вы сначала удаляете все тома на диске, а затем конвертируете диск в GPT-диск, используя правую кнопку мыши на диске и выбирая пункты меню. Используя командную оболочку с правами администратора, вы используете утилиту diskpart чтобы удалить любые тома, а затем преобразовать диск в диск GPT.

Если вы не хотите сначала выполнять резервное копирование данных и иметь доступ к машине с Linux, на которой вы можете установить диск, в Linux есть инструменты, которые позволят вам преобразовать тип раздела без разрушения, как описано здесь. Если у вас нет удобного Linux-бокса, вы также можете попробовать создать загрузочный компакт-диск Linux и загрузиться с него.

Поиск "конвертировать MBR в GPT" вызывает другие инструменты, но я никогда не пробовал их.

0

Краткое добавление к ответу Натанбедфорда:

Как сказал simonzack, Windows 7 bcdboot не поддерживает /f флаг.  У меня не было никаких проблем; просто нужно было запустить bootrec /rebuildbcd сразу после запуска команд Натана, и это сработало.

Второй, 128 МБ раздел не нужен.  У меня не было места, и я просто проигнорировал это.  Пока все отлично работает.

-1

Я сделал то, что сказал @nathanbedford, однако Windows 7 bcdboot не принимает флаг /f, чтобы завершить последний шаг

bcdboot c:\windows /s s: /f UEFI

вам нужно использовать более новую версию bcd, это> = win8.

Это можно сделать двумя различными способами: либо скопировать более новый bcdboot.exe на читаемый диск, чтобы вы могли получить к нему доступ из cmd (как я это сделал), либо запустить новый диск для восстановления системы Windows.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .