42

Этот диск OCZ VERTEX 128GB SSD. Он отформатирован как GPT из OSX. Расположение дисков:

/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *128.0 GB   disk1
   1:                        EFI                         209.7 MB   disk1s1
   2:                 Apple_RAID                         63.8 GB    disk1s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk1s3
   4:       Microsoft Basic Data ssdwin                  63.9 GB    disk1s4

Я пытаюсь установить Windows7 в разделе "ssdwin", но когда я установил EFI Boot Windows 7 64-битный USB, он говорит:

Windows не может быть установлена на этот диск. Выбранный диск имеет таблицу разделов mbr. В системе EFI окно может быть установлено только на GPT-диски.

Но мой диск - это GPT-диск. Любая идея, как я могу оправиться от этого?

1 ответ1

68

Вы использовали Apple Disk Utility для создания файловой системы FAT в этом разделе Windows? Если это так, вы преобразовали диск из легального GPT-диска в гибридный MBR- диск, который OS X видит как GPT, а Windows - как MBR. Решением в этом случае является очистка гибридных данных MBR. Ряд утилит может сделать это. Я опишу, как это сделать с помощью моей собственной утилиты GPT fdisk (gdisk) :

  1. Загрузите GPT fdisk со страницы Sourceforge и установите его. (Версии доступны для Linux, OS X и Windows. Я предполагаю, что вы будете делать это из OS X.) Кроме того, вы можете запустить его с аварийного диска Linux, например Parted Magic.
  2. Запустите gdisk на вашем диске, введя sudo gdisk /dev/disk1 в окне терминала. (Измените идентификатор устройства, если он не такой, как вы представили ранее, или если вы используете другую ОС для работы.)
  3. Введите p чтобы просмотреть таблицу разделов и убедиться, что вы работаете на правильном диске. Если нет, введите q чтобы выйти без сохранения изменений, и повторите попытку с другим устройством.
  4. Введите x чтобы войти в меню экспертов.
  5. Введите n чтобы создать новую защитную MBR. Обратите внимание, что gdisk не подтвердит изменение; это просто покажет вам подсказку новых экспертов.
  6. Введите w чтобы сохранить изменения. Вам будет предложено подтвердить это действие. Сделай так.

Если повезет, это решит проблему. Если это не так, вы можете использовать опцию gdisk v (в любом меню), чтобы gdisk искал проблемы с таблицей разделов. Это может исправить некоторые незначительные проблемы автоматически, но в других случаях вам придется вносить явные изменения. Подробности смотрите в документации fdisk GPT по ремонту GPT .


El Capitan Addendum:

Apple OS X 10.11 ("El Capitan") включает в себя новую функцию, известную как "без root" или "Защита целостности системы", которая затрудняет или делает невозможным запуск определенных типов утилит, включая GPT fdisk. Безусловно, эта новая функция предназначена для повышения безопасности, так как вредоносным программам будет сложнее захватить контроль над компьютером или пользователям случайно повредить их собственные системы; но это также вызывает проблемы, если вам действительно нужно использовать GPT fdisk или другие сторонние инструменты. Если собственные инструменты Apple позволяют удалять гибридные MBR, я не знаю, как с ними это делается, так что AFAIK эта задача действительно требует обхода этой новой функции безопасности.

Есть несколько способов обойти эту проблему, например:

  • Используйте не OS X OS, такую как установщик Ubuntu, загруженный в режим "попробуй перед установкой".
  • Удерживайте Ctrl +R при загрузке Mac, чтобы запустить среду восстановления, в которой эта функция отключена. Теоретически вы должны иметь возможность запускать gdisk в этой среде, хотя вам может потребоваться настроить переменную среды PATH . (Я не пробовал этот подход, поэтому могут быть препятствия, которые я не рассматривал.)
  • Загрузитесь в среду восстановления, откройте окно терминала, введите csrutil disable и перезагрузитесь в обычную среду. Это действие отключает систему без root. Вы можете повторно включить его, выполнив эти шаги, но передайте enable вместо disable а не csrutil .

Более подробную информацию о среде без корней смотрите на этой странице.

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