Как переместить существующую установку Windows 7 64bit в UEFI (из прежней версии)


15

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

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

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

Ответы:


4

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" вызывает другие инструменты, но я никогда не пробовал их.


2
Привет здан; Вы можете расширить свой ответ, включив соответствующую информацию здесь? Это похоже на поиск в Google, а не на ответ, в его нынешнем виде. Благодарность!
канадский Люк

Первая ссылка больше не работает: (
Lapin

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. Это оно! Вы можете перезагрузить компьютер прямо сейчас.

@Ramhound, спасибо за отзыв. Это хороший момент ... если оригинальная статья исчезнет, ​​тогда мой ответ бесполезен. Я обновил свой ответ.
Натанбедфорд

4
Последняя инструкция недопустима в Windows 7, так как bcdboot не имеет /fфлага. Я пытался удалить это, но это не сработало.
simonzack

Этот рецепт работал и для меня. У меня есть два комментария и продолжение: (1) после завершения процедуры и прежде чем пытаться загрузить новую настройку UEFI, НЕ забудьте вернуться в BIOS и изменить способ загрузки на UEFI !! На моей плате MSI это приняло форму предоставления диска-как-UEFI более высокого приоритета, чем диска-как-BIOS. Если вы этого не сделаете, загрузка будет зависать :-) на темном экране с курсором, который прыгает на 1-2 строки вниз. (2) Когда я в первый раз присвоил букву = S, она не выживала при выходе из diskpart. Не уверен почему, пришлось переделывать. (3) Какова цель раздела MSR?
Рейкред

4

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

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

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

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

  • Шаг 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 без потери данных (более простой метод)


Один необязательный шаг, отсутствующий в этом: я переключал систему, которая уже имела «системный» раздел размером в 100 МБ, который он использовал для загрузки MBR. Мне нужно было удалить этот раздел, прежде чем новый раздел EFI будет работать.
dannysauer

О, я также должен был создать диск восстановления UEFI. Компакт-диск с Windows 7 не хочет появляться в режиме UEFI, поэтому я использовал rufus.ie для создания загрузочного USB-диска UEFI. Я не совсем уверен, было ли это абсолютно необходимо, но, как правило, он работает лучше независимо от операционной системы, если вы пытаетесь исправить проблемы с UEFI, когда вы находитесь в среде с загрузкой UEFI. :)
dannysauer

0

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

Как сказал Симонзак , 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.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.