Нет необходимости возвращаться к схеме разбиения MBR, и даже нет необходимости в схеме разделения "гибридного MBR". (У меня есть такие на одной из моих машин, и подтверждаю, что они не для слабонервных.)
Windows 7 может нормально использовать EFI-разделенные диски. Он просто не может быть загружен с них на компьютерах, не поддерживающих EFI, и (чтобы защитить вас от себя, в стиле Microsoft) отказывается устанавливать на них в первую очередь. В вашем случае ваша проблема - это фундаментальный недостаток вашей прошивки, и на самом деле это не проблема Windows . Ваша прошивка не понимает таблицу разделов EFI.
Такое понимание необходимо, если кто-то хочет преобразовать загрузочную версию своей операционной системы в разделенные диски EFI. Необходимо знать прошивку, чтобы открыть меню диспетчера загрузки EFI, а затем загрузить выбранную программу загрузки операционной системы из системного раздела EFI. Однако ваша прошивка не очень умная и не знает, как сделать намного больше, чем загрузить "основную загрузочную запись" и запустить ее загрузочный код. На многораздельном диске EFI в основной загрузочной записи нет кода, который можно было бы запустить до конца процесса загрузки EFI.
В лучшем случае, прямо сейчас, у вас есть код начальной загрузки MBR, который в равной степени так же не знает о схеме таблиц разделов EFI, как и ваша прошивка, и он ожидает найти и обработать таблицу разделов MBR. Что вам нужно, это две вещи:
- иметь загрузочный код MBR, который знает, как читать таблицу разделов EFI, и найти загрузчик второго уровня, который также поддерживает таблицы разделов EFI и который позволит вам, в свою очередь, загружать и запускать загрузчики операционной системы
- какой-то способ убедить Windows 7 установить на разделенный диск EFI
Первое не невозможно. Существует два источника таких загрузочных загрузок MBR с поддержкой EFI-разбиения:
- Я написал и опубликовал один (после того, как этот ответ был впервые написан, на самом деле).
- Так называемый "GPT" MBR Boostrap в SYSLINUX, написанный Х. Питером Анвином, является другим.
Оба будут искать "активный" раздел, загружать и запускать его VBR, эффективно загружая старый PC /AT и PC98, но с таблицей разделов EFI. Если эти два не удастся, лучшая альтернатива, которую вы получите прямо сейчас:
- GRUB 2: К сожалению, это все еще основано на вставке аппаратных цифр в код начальной загрузки MBR, чтобы сообщить ему, где найти следующую часть его загрузчика. Но этот второй этап, после загрузки и запуска, полностью способен понимать таблицу разделов EFI и запускать загрузчики операционной системы изнутри разделов. Однако он не знает, как запускать загрузчики операционной системы EFI, он знает только, как справиться с VBR, Linux и BSD.
- UEFI DUET: (Род Смит обсуждает это подробно.) Опять же, к сожалению, несмотря на то, что это устанавливается в том и вызывает полностью работоспособный EFI Boot Manager и EFI Shell, ему все равно нужно что-то еще для загрузки и запуска VBR. И прямо сейчас, что-то еще должно быть чем-то вроде GRUB2, которое само полагается на номера проводных секторов в коде MBR, или на SYSLINUX, или на самом деле на мою загрузочную запись MBR, поддерживающую разделение EFI. Но вы сможете запускать правильные загрузчики операционной системы EFI.
Второе (убедить Windows 7 установить на многораздельный диск EFI) достижимо, по крайней мере, с x86-64 разновидностью Windows 7. Он сложный, официально не поддерживается Microsoft и требует создания своего собственного установочного диска Windows с EFI-версией Microsoft Boot Manager на нем и запуска его из среды загрузки EFI. (Если у вас установлен UEFI DUET, это довольно легко, конечно.) Но он убеждает Windows 7 в том, что его установщик был загружен в систему EFI, и этот критерий использует установщик, чтобы определить, позволит ли он устанавливать Windows на разделенный жесткий диск EFI.
Конечно, есть дополнительная, заключительная, сложность после установки загрузки Windows 7 изо дня в день; потому что установщик, зная, что у вас есть прошивка EFI, установит версию EFI менеджера загрузки Microsoft. Таким образом, вам понадобится либо:
- установить PC/AT-версию Microsoft Boot Manager и договориться, чтобы GRUB2 знал, где она находится, если вы используете GRUB2; или же
- всегда загружать UEFI DUET и запускать версию EFI Microsoft Boot Manager оттуда.
Практически вся эта ерунда просто исчезнет, если в первую очередь будет установлена прошивка EFI. Windows 7 (x86-64) будет успешно установлена, и EFI Boot Manager, который понимает таблицу разделов EFI и будет загружать и запускать Microsoft Boot Manager (а также любую другую EFI-загружаемую операционную систему) непосредственно из файла обычного образа программы в системном разделе EFI, поставляется с прошивкой.