Вообще говоря, есть два способа добиться этого, но есть много вариантов в обеих категориях. Обратите внимание, что вы должны понимать структуру таблицы разделов, прежде чем начать. Я рекомендую вам ввести sudo gdisk -l /dev/sda
с аварийного диска Linux. Среди прочего, это покажет что-то вроде этого:
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
В этом примере показан чистый GPT-диск - GPT: present
означает, что диск является GPT-диском, а MBR: protective
означает, что это стандартный легальный GPT-диск. Если вместо этого он читает MBR: hybrid
и GPT: present
, то это идентифицирует диск GPT с гибридной MBR; и если он читает MBR: MBR only
и GPT: not present
, это идентифицирует диск с чистой MBR. От того, какой тип диска у вас есть, зависит, как может себя вести прошивка Mac.
Вам также следует искать раздел со столбцом Code
EF00
. Если имеется, это системный раздел EFI (ESP), который важен для загрузки в режиме EFI.
Имея эту информацию в руках, вы можете приступить к рассмотрению параметров вашего режима загрузки ....
Установка BIOS/CSM/Legacy-Mode
Для установки только на Linux на Mac установка BIOS/CSM/legacy-mode на диск с чистым MBR, как правило, является самой простой. Это заставляет Mac загружаться в режиме BIOS, минуя необходимость настройки переменных загрузки EFI. Точно, как добраться до этого состояния, где вы находитесь, зависит от вашего текущего расположения диска. Возможные шаги включают в себя:
- Загрузитесь с аварийной системой Linux.
- Конвертировать жесткий диск из GPT в MBR. Этот шаг может или не может быть необходимым, в зависимости от текущего состояния диска. См. Эту документацию (часть моей документации по
gdisk
) для получения общей информации. Обратите внимание, что если у вас более четырех разделов, или в будущем вам понадобится более четырех, вам нужно будет настроить некоторые разделы как логические, и с этим возникнут проблемы с размещением. Я не могу быть более точным, не зная точную секторную структуру разделов.
- Установите загрузчик в режиме BIOS. Для Ubuntu и связанных дистрибутивов самый простой способ сделать это с помощью Boot Repair. Я не могу обещать, что этот инструмент будет хорошо работать с другими дистрибутивами. Возможно, вам придется сделать это вручную, и, боюсь, у меня нет готовых указателей на эту задачу. В некоторых дистрибутивах GRUB устанавливается вручную как часть установок ОС, и в их инструкциях по установке должно быть указано, как это сделать.
Начало загрузки в режиме EFI
На компьютерах Mac установлена прошивка EFI, поэтому загрузка в собственном режиме EFI возможна; Тем не менее, Mac всегда немного странные. Для большинства компьютеров на основе EFI модуль поддержки совместимости (CSM), который обеспечивает совместимость с BIOS, является сложным, если вы хотите загружаться в режиме EFI. (См. Мою страницу на эту тему для деталей.) На Mac CSM активируется наличием MBR или гибридной MBR на жестком диске, поэтому вы хотите быть уверены, что его не существует. GParted и parted
стирают гибридную MBR, если диск разбит на диск как GPT, и gdisk
может стереть гибридную MBR с помощью параметра n
в меню экспертов. Обратите внимание, что GPT обычно является типом таблицы разделов, используемой при загрузке в режиме EFI. Таким образом, если диск использует MBR, вы можете преобразовать его, что может сделать gdisk
. (Загрузка таблицы разделов с последующим сохранением ее обратно с помощью команды w
, вероятно, сделает эту работу. Возможно, вам потребуется создать системный раздел EFI (ESP) .)
Mac также может загружаться в BIOS/CSM/ устаревшем режиме, если оптический диск или флэш-накопитель USB поддерживает этот режим загрузки. Похоже, что это происходит с вами с некоторыми СМИ, которые вы пытаетесь.
Один из способов получить контроль над вашим режимом загрузки, чтобы обеспечить загрузку в режиме EFI, - это использовать мой менеджер загрузки rEFInd. Загрузите версию rEFInd для флэш-накопителя USB, запишите ее на флэш-накопитель USB, а затем отредактируйте файл EFI/BOOT/refind.conf
на диске: раскомментируйте строку scanfor
и убедитесь, что три варианта загрузки в режиме BIOS (hdbios
, biosexternal
и cd
) отсутствуют в строке scanfor
. Когда вы загружаете rEFInd-носитель, на нем должны отображаться только параметры загрузки в режиме EFI . Это должно позволить вам загрузить другой носитель в режиме EFI - при условии, конечно, что этот носитель поддерживает загрузку в режиме EFI (не все это делают). Обратите внимание, что иногда rEFInd показывает некоторые параметры загрузки. Нажатие клавиши Esc приводит к повторному сканированию загрузочного носителя.
В любом случае, после загрузки ОС Linux в режиме EFI вы сможете использовать efibootmgr
для добавления, удаления и изменения записей менеджера загрузки EFI. Cory T обрисовал в общих чертах, как сделать конкретную запись активной, но не ясно, есть ли у вас одна для вашего загрузчика Linux - или даже если она установлена. Если у вас не установлен загрузчик Linux в режиме EFI, один из способов сделать это - установить rEFInd на ваш жесткий диск. Лучше всего это делать после загрузки самой целевой ОС. (Сценарий refind-install
должен работать даже с аварийного диска, но этот код относительно плохо протестирован, и он просто не может выяснить все, что ему может понадобиться, что делает загрузку целевой ОС более безопасной опцией.) Другой вариант - использовать Boot Repair, но, как и выше, я не знаю, насколько хорошо он будет работать с дистрибутивами, которые не связаны с Ubuntu. Я недостаточно знаком с дистрибутивом, который вы пытаетесь установить, чтобы узнать, предоставляет ли он загрузчик в режиме EFI. Если нет, вам придется установить его самостоятельно. Посмотрите мою страницу загрузчиков EFI для Linux для предложений.