Все еще возможно установить Ubuntu на внешнем жестком диске с UEFI?

Похоже, что установка Ubuntu к внешнему жесткому диску не возможна с UEFI, где как с MBR не было большой разницы между внешним и внутренним. Это верно, или это все еще возможно?

Даже возможно объединить оба метода начальной загрузки?

9
задан 13 April 2017 в 05:23

1 ответ

Это на самом деле возможно.

Прежде чем я продолжу, эти инструкции предназначены для пустых Системных разделов EFI (ESP) и будут, вероятно, перезаписывать существующие файлы или не работать как ожидалось. По крайней мере, сделайте резервные копии!

Добавление требуемых разделов для различных платформ

Платформы: Наследие ПК, основанный на UEFI компьютер Windows, компьютер Apple

Добавьте ESP к существующей установке с MBR

Необходимо следовать этим инструкциям от другой установки или живых медиа.

  1. Установите grub-efi-amd64-bin пакет. Это только установит необходимые ресурсы. Это не переключит Вашу существующую установку стиля MBR на UEFI и перевернет вещи вверх дном.

  2. Уменьшите свой раздел Ubuntu в GParted для создания пространства для ESP. Рекомендуемые размеры для диапазона ESPs от 100 МБ до 500 МБ, но файлов, созданных путем следования этим инструкциям здесь, не потребуют больше чем 2 - 5 мегабайтов.

    Примечание: Не должно иметь значения, где Ваш ESP расположен на диске, и уменьшение Вашего раздела Ubuntu несколькими мегабайтами от конца должно быть быстрым и безопасным. Уменьшение вначале не безопасно. Один протест, хотя, Ваш ESP должен быть основным разделом и не быть частью расширенного раздела или логического тома, числа раздела от 1 до 4 прекрасны, числа выше указывают на расширенный раздел на таблицах разделов MBR.

    Выберите FAT32 в качестве файловой системы и установите флаг начальной загрузки.

  3. Смонтируйте ESP, который Вы просто создали и корневая файловая система Вы уменьшенный:

    mkdir -p /mnt/esp
    mount $esp_device /mnt/esp
    mkdir -p /mnt/rootfs
    mount $root_device /mnt/rootfs
    

    Примечание: Замена $esp_device и $root_device с соответствующими устройствами, например. /dev/sdb2 и /dev/sdb1. Точки монтирования /mnt/esp и /mnt/rootfs просто примеры, выбранные для работы с остающейся частью этого ответа.

    Установите изображение EFI GRUB и минимальный конфигурационный файл с:

    grub-install --efi-directory /mnt/esp --boot-directory /mnt/rootfs/boot --target x86_64-efi --removable $device
    

    Отметьте это $device целое устройство, например. /dev/sdb, не раздел.

  4. Вот именно мы уже сделаны, но позволяем мне попытаться объяснить несколько вещей.

    Параметр --target x86_64-efi гарантирует, что изображения UEFI и модули будут установлены на данных путях. --removable установит изображение UEFI на пути hardcoded \EFI\BOOT\BOOT{arch}.EFI для съемных носителей, вместо распределения определенный путь. Ваш grub.cfg в /boot/grub/ должен работать и с методами начальной загрузки и с новой названной папкой x86_64-efi должен теперь существовать рядом с i386-pc.

    Для полноты это - команда для несъемных носителей, которая пишет и полагается на записи NVRAM в платформе:

    grub-install --efi-directory /mnt/esp --boot-directory /mnt/rootfs/boot --target x86_64-efi --bootloader-id "Ubuntu" $device
    

    Надлежащие установки UEFI включают строку, подобную той ниже в /etc/fstab, но установка функциональна без, и изображение UEFI (подобный загрузчику MBR) обычно только пишется/обновляется во время установки ОС.

    UUID=1234-567F /boot/efi vfat defaults 0 1
    

Добавление ESP или GRUB-BBP к установке с GPT

При добавлении ESP к установке прежней версии на GPT разделенный диск очень похож на вышеупомянутое:

  1. Установите grub-efi-amd64-bin пакет.
  2. Создайте раздел с файловой системой FAT32, подобной инструкциям выше путем изменения размеров корневого раздела, и установите boot флаг.
  3. Смонтируйте разделы и работайте grub-install команда от вышеупомянутого, который включает --removable параметр.

Это также работает, если Вы просто хотите загрузить свой exisitng UEFI установка на другом компьютере.

Создание BIOS загрузочного раздела (BBP) для GRUB несколько отличается:

  1. Установите grub-pc-bin пакет.

  2. Создайте раздел, подобный инструкциям выше путем изменения размеров корневого раздела, и установите bios_grub флаг. Не выберите файловую систему и оставьте восстановленным после форматирования.

  3. Отредактируйте конфигурационный файл /etc/default/grub с административными правами и добавляют GRUB_DEVICE=/dev/sdb6 в конец. Замена /dev/sdb6 с названием существующего устройства Вашего BBP. Можно использовать редактора командной строки нано для хранения вещи простым.

    Установите изображение MBR GRUB на BBP с:

    grub-install --boot-directory /mnt/test/boot/ --target i386-pc $device
    

    Вы могли бы хотеть удалить или прокомментировать строку в /etc/default/grub и добавьте его к фактической установке.

Премия: Добавьте раздел для Mac на установке с GPT

Я нашел, что очень новый Mac (Mac Мини-A1347 EMC 2840) тестировал с, мог загрузиться от стандартного FAT32 ESP, даже от MBR! Так или иначе здесь мы идем:

  1. Установите grub-efi-amd64-bin, hfsprogs, mactel-boot и mactel-boot-logo (дополнительно) пакеты. Необходимо ли включить репозитории Вселенной (Как я включаю репозиторий "Вселенной" из командной строки?) и добавляют, что текущие Mactel поддерживают PPA (дополнительную информацию см. в команде Сообщества поддержки Mactel) устанавливать всех их.

  2. Создайте раздел с HFS + файловая система, подобная инструкциям выше путем изменения размеров корневого раздела. На этот раз нам нужны несколько мегабайтов больше пространства, так удвойте размер ESP, если у Вас было только 5 мегабайтов или меньше прежде. Никакой флаг не требуется.

  3. Смонтируйте разделы:

    mkdir -p /mnt/esp-mac
    mount $esp-mac_device /mnt/esp-mac
    mkdir -p /mnt/rootfs
    mount $root_device /mnt/rootfs
    

    Примечание: Я выбрал $esp-mac_device и /mnt/esp-macизбегать конфликтов.

    Работайте grub-install команда, которая включает --removable параметр:

    grub-install --efi-directory /mnt/esp-mac --boot-directory /mnt/rootfs/boot --target x86_64-efi --removable $device
    

    Наконец установите раздел путем, Mac ожидает, что это будет:

    sudo hfs-bless /mnt/esp-mac/EFI/BOOT/bootx64.efi
    sudo cp -v /mnt/esp-mac/EFI/BOOT/bootx64.efi /mnt/esp-mac/System/Library/CoreServices/boot.efi
    sudo cp -v /mnt/esp-mac/EFI/BOOT/grub.cfg /mnt/esp-mac/System/Library/CoreServices/grub.cfg
    sudo cp -v /usr/share/mactel-boot/SystemVersion.plist /mnt/esp-mac/System/Library/CoreServices/SystemVersion.plist
    sudo cp -v /usr/share/mactel-boot-logo/ubuntu.icns /mnt/esp-mac/.VolumeIcon.icns
    echo "Dummy kernel for booting" | sudo tee /mnt/esp-mac/mach_kernel
    

    Для начальной загрузки Ubuntu от внешних медиа на Mac, необходимо было бы теперь просто нажать функциональную клавишу или Высокий звук на клавиатурах Windows и выбрать правильный диск.

    Mac Startup Manager showing volumes and Ubuntu logo

О флагах раздела введите коды и GUID

Чтобы быть максимально точным, флаг начальной загрузки не важен для GRUB, GRUB по умолчанию ищет UUID, чтобы найти, что правильная файловая система загружается от. Установка флага начальной загрузки или флага bios_grub в GParted обычно устанавливает тип (MBR) или GUID (GPT) для раздела.

Преимущество установки корректного типа или GUID, помимо наличия правильно рабочей установки, то, что эти разделы будут скрыты в filemanager. Самый легкий способ проверить и изменить типы и GUID через Диски (gnome-disks).

screenshot showing drives and partitions in gnome-disks

screenshot showing edit partition dialog in gnome-disks

Кроме того, Вы могли использовать разделенный или gdisk:

  • 0xef является кодом типа для ESP в MBR для использования с fdisk
  • ef00 является сокращенным, вводят код для ESP в GPT для использования с gdisk
  • ef02 является сокращенным, вводят код для BBP в GPT для использования с gdisk

Википедия имеет большой список GUID для GPT.

Эквиваленты командной строки в parted согласно руководству parted $device set partition esp on и parted $device set partition bios_grub on.

11
ответ дан 23 November 2019 в 05:00

Другие вопросы по тегам:

Похожие вопросы: