EFI загружает Ubuntu 14.04 на Mac без rEFInd

7

Я хочу полностью удалить OS X с моего Mac и установить Uninstall Ubuntu 14.04 LTS.

Хотя я хочу использовать новый метод загрузки EFI вместо устаревшей загрузки BIOS, я не хочу использовать rEFInd или любой другой загрузчик третьей стороны, но вместо этого я хочу использовать загрузчик по умолчанию для Mac.

Причиной этого является то, что я хочу исключить примерно 30-секундную задержку, вызванную другими известными методами, а также хочу получить доступ к различным утилитам, связанным с EFI.

Можете ли вы предоставить подробный и пошаговый метод для достижения этого?

    
задан Rohith Madhavan 19.12.2014 в 19:02
источник

1 ответ

9

Этот процесс очистит OS X и любые другие данные, которые у вас есть на машине. Прежде чем продолжить, обязательно создайте резервную копию своей системы.

Возможно, вы захотите создать диск восстановления , чтобы вы могли восстановить OSX на более позднюю дату, если потребуется .

Создайте Live USB с Ubuntu

Подробные инструкции см. в на этой странице . UNetbootin рекомендуется, так как это кросс-форма и предоставляет графический интерфейс пользователя (GUI).

ПРИМЕЧАНИЕ . НЕ используйте версию +mac , так как она не поддерживает загрузку EFI.

Загрузка с Live USB

Уловкой для загрузки с USB на Mac является удержание клавиши option , как только вы включите устройство. Выберите EFI Boot в этом меню.

Ubuntu теперь должен загрузиться с USB. Установите Ubuntu с помощью параметра Стереть и использовать весь диск .

Во-первых, когда вы перезагружаетесь / включаете свой Mac, вы увидите серый экран загрузчика Mac примерно на 30 секунд, а затем мягко мигающую папку с символом '?' внутри. Если вы вставляете USB-диск установщика сейчас, он должен загружаться. Если нет, попробуйте удерживать кнопку питания, чтобы отключить питание, а затем следуйте инструкциям загрузки USB, чтобы поднять их.

Загрузка вручную с жесткого диска

В этот момент система не загружается, потому что загрузчик Mac ожидает, что раздел EFI будет отформатирован как HFS +, типичная файловая система Mac, в то время как установщик Ubuntu фактически форматирует его как VFAT.

На этом этапе мы проинструктируем GRUB о том, что Live USB слишком загружается с вашего недавно установленного Ubuntu на жестком диске. - Это потребует серьезного набора текста, но после загрузки этого способа мы будем готовы настроить автоматическую загрузку на следующем шаге.

Если вы используете установщик рабочего стола, удерживайте клавишу shift , чтобы открыть меню загрузчика GRUB.

Когда вы видите меню загрузки GRUB, не выбирайте ни одну из записей. Вместо этого нажмите C , чтобы открыть консоль GRUB.

На консоли grub введите ls

grub> ls 
(memdisk) (hd0) (hd0,msdos) (hd1) (hd2) (hd2,gpt3) (hd2,gpt2)
(hd2,gpt1)

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

Теперь найдите раздел, который содержит домашний каталог вашего пользователя.

grub> ls (hd2,gpt2)/home
rohith/

Продолжайте пытаться, пока не найдете его.

Результат последнего шага состоит из двух частей: (hdX,gptY) . Вам нужно сохранить часть hdX , но пройти через все gptY , которые ищут каталог / boot / grub.

grub> ls (hd2,gpt2)/boot/grub
unicode.pf2 [...] grub.cfg

Теперь вы хотите установить это как свой корень для дальнейших команд.

grub> set root=(hd2,gpt2)

Единственный способ правильно загрузиться - использовать UUID диска.

grub> ls -l (hd2,gpt2)

Запишите UUID. Вам нужно будет ввести его вручную на следующем шаге.

grub> linux /boot/vmlinuz〈Tab here!〉.efi.signed root=UUID=〈the UUID from above〉

Консоль GRUB может выполнить табуляцию, поэтому, если вы просто наберете часть vmlinuz и нажмете tab , тогда нажмите. и tab снова, вам не нужно будет вводить имя всего файла. убедитесь, что присутствует efi.signed .

Теперь установите начальный RAM-диск

grub> initrd /boot/initrd〈Tab here!〉

Вы можете загрузить с жесткого диска команду

grub> boot

Настройка автоматической загрузки

Теперь вы загрузились в свой недавно установленный Ubuntu. Следующий шаг - сделать автоматическую загрузку и безболезненно загружать, переформатировав раздел /boot/efi в файловую систему HFS +, которую ожидает Mac, и позволяя вам сразу же загрузиться.

1. Установка дополнительных пакетов

Теперь откройте терминал и введите

sudo add-apt-repository ppa:detly/mactel-utils
sudo apt-get update
sudo apt-get install mactel-boot hfsprogs gdisk grub-efi-amd64

2. Переформатирование раздела EFI

Запустите mount , чтобы получить список смонтированных файловых систем, и найдите что-нибудь, смонтированное в / boot / efi. Отключите его.

sudo umount /dev/sda1

Теперь мы используем gdisk для удаления раздела VFAT и создания HFS + one

sudo gdisk /dev/sda

(Обратите внимание, что в конце этого имени нет номера NO!)

Нажмите p

Подтвердите, что первый раздел имеет тип EF00 . Теперь мы удалим этот раздел EF00 .

Нажмите d

Создайте новый HFS + на своем месте.

Нажмите n

Нажмите клавишу ввода для первой и последней опций сектора.

Введите код AF00 для кода файловой системы.

Используйте команду p , чтобы дважды проверить свои изменения, а затем w для записи.

Теперь у нас есть неформатированный раздел HFS +. Отформатируйте его с помощью

sudo mkfs.hfsplus /dev/sda1 -v ubuntu

3. Обновление таблицы файловой системы

Изменить / etc / fstab

sudoedit /etc/fstab

Удалите строки, которые ссылаются на /boot/efi , используя Ctrl+K .

Теперь введите следующие команды -

sudo bash -c 'echo $(blkid -o export -s UUID /dev/sda1) /boot/efi auto defaults 0 0 >> /etc/fstab'
mount /boot/efi

4. Установка GRUB в раздел HFS

sudo bash -c 'echo "This file is required for booting" > /boot/efi/mach_kernel'

Установите GRUB и «благословите» файловую систему.

sudo grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi
sudo hfs-bless "/boot/efi/System/Library/CoreServices/boot.efi"

РЕДАКТИРОВАТЬ . Устранение неполадок: при выполнении этих инструкций на Ubuntu 14.04 Trusty Tahr, я получил следующее сообщение об ошибке из grub-install

Installing for x86_64-efi platform.grub-install
error: Can't create file: No such file or directory.

После запуска снова с strace я решил, что он не ищет файл с именем /boot/efi/mach_kernel , а файл с именем /boot/efi/EFI/ubuntu/mach_kernel и после создания этого файла и повторное выполнение grub-install все кажется Работа. END EDIT

5. Удаление задержки загрузки

Чтобы установить загрузочную запись EFI по умолчанию, запустите

sudo efibootmgr

Избавьтесь от дополнительных записей -

sudo efibootmgr -b xxxx -B

где xxxx - номер загрузки, полученный из sudo efibootmgr

Теперь установите запись по умолчанию -

sudo efibootmgr -o xxxx

Теперь система должна быть загрузочной!

КРЕДИТЫ

Джейсон Херис - для своего оригинального поста используется PPA.

Rohith Madhavan - Для публикации на Ask Ubuntu незначительные изменения.

    
ответ дан Rohith Madhavan 19.12.2014 в 19:02
источник