'' Загрузочный раздел EFI '' и ''biosgrub'' раздел
Зачем мне это нужно? Я установил Ubuntu без UEFI (основной загрузочной записи) и установил Ubuntu без 'biosgrub', и он работает нормально, тогда как в других случаях меня просят сделать раздел 'biosgrub'. Я понятия не имею, почему иногда мне это нужно, а другим - нет (оба они были в одной системе. И то же самое происходит, когда я использую UEFI (таблицу разделов GUID), единственное отличие - меня просят сделать 'EFI' загрузочный раздел ", но, как и в случае с" biosgrub ", иногда меня просят сделать это, а иногда меня не просят сделать это. Для моей текущей установки меня просили сделать один, но я этого не делал, и моя система в порядке. никаких изменений в системе, том же оборудовании, BIOS и т. д. Может ли кто-нибудь пролить свет на это?
3 ответа
Существует четыре условия (BIOS против EFI и MBR против GPT), но два из них имеют идентичные потребности (и одно из них чрезвычайно редко):
- На традиционном компьютере на базе BIOS с традиционной таблицей разделов MBR исполняемый код GRUB распространяется как спагетти, брошенные ребенком. Некоторые из них находятся в разделе загрузочного кода MBR, некоторые из них находятся в секторах после MBR, которые официально не распределены, а некоторые в Linux
/boot
раздел. Это настоящий беспорядок, и он работает только потому, что у разработчиков были буквально десятилетия, чтобы создавать умные хаки и обрабатывать (почти) все изгибы. - На традиционном компьютере с BIOS с новой таблицей разделов GUID (GRT) код GRUB аналогичен предыдущему; однако секторы, следующие непосредственно за MBR, не являются нераспределенными; они используются самой GPT. GPT не предлагает аналогичного места для захвата GRUB, поэтому разработчики GRUB остановились на загрузочном разделе BIOS (который GParted и
parted
определить поbios_grub
флаг) для хранения кода, который будет идти в секторах после MBR на диске MBR. На самом деле это безопаснее и чище, чем подход MBR, поскольку он служит для защиты кода GRUB от других программ, которые могут попытаться использовать это нераспределенное пространство. - На компьютере с более новым EFI, а не BIOS, загрузчики не хранятся в MBR, в официально нераспределенных секторах после MBR или в загрузочных разделах BIOS; вместо этого загрузчики находятся в виде обычных файлов в разделе FAT, известном как системный раздел EFI (ESP). ( Смущает, что установщики Debian и Ubuntu ссылаются на ESP под названием "Загрузочный раздел EFI", но это имя нестандартно. GParted и
parted
идентифицировать ESP как имеющий егоboot
установлен флажок, хотя эта терминология означает что-то совершенно другое на дисках MBR.) ESP может существовать либо на GPT-диске, либо на MBR-диске, но первый гораздо более распространен на компьютерах на основе EFI. Подход EFI намного безопаснее и гораздо более гибкий, чем подход BIOS, поскольку он не убирает необработанный код в странных местах: загрузчики находятся в файлах, как и программы уровня ОС. Это облегчает их идентификацию и манипулирование (OTOH, EFI также хранит данные на загрузчиках в NVRAM, что создает вторую точку отказа в процессе загрузки. Новизна EFI также означает, что он не так хорошо протестирован, что объясняет множество проблем, специфичных для EFI.)
GhostMotleyX, ваш комментарий к ответу LiveWireBT показал, что "лучший" способ установки - это BIOS/MBR. Конечно, это субъективно, но я не согласен с такой оценкой. Подход BIOS / MBR является наименее безопасным и наиболее неуклюжим из трех описанных мною подходов. Подход EFI - самый безопасный и самый гибкий подход. Я подозреваю, что вы зациклены на том факте, что для подходов GRUB/GPT и EFI требуются отдельные разделы, но это не имеет большого значения. Помимо настройки системы или обслуживания разделов, эти разделы будут в значительной степени невидимы для вас и обеспечат вам большую гибкость. В отличие от MBR, GPT не ограничивается четырьмя основными разделами, так что вам не нужно копить свои основные разделы, как гном, хранящий его золото.
Вам необходимо создать раздел biosgrub на многораздельном диске GPT при настройке устаревшей загрузки или загрузочный раздел EFI (для многораздельного GPT или MBR) при настройке загрузки UEFI.
- GRUB требует загрузочного раздела BIOS (2 МБ, без файловой системы,
EF02
введите код в gdisk или флаг bios_grub в GNU Parted) в системах BIOS, чтобы встроить егоcore.img
файл из-за отсутствия пробела встраивания после MBR в GPT-диски. [...]
Я дам один дополнительный пункт / мотив для того, чтобы и EFI и BIOS grub.
Флешка для загрузки петли Live SystemRescueCD.iso из Grub2.
Зачем? Простой ответ: он будет загружаться на многих компьютерах, некоторые имеют UEFI, некоторые имеют только 32-битный BIOS и т. Д.
Реальный сложный мотив: по возможности используйте передовое аппаратное обеспечение (UEFI).
Пример реального использования:
- Флешка (отформатированная в режиме GPT) с четырьмя разделами
- Первый раздел (видимый из Windows 7 и выше) в NTFS с остальным размером флешки
- Второй раздел для файла Grub2 и SystemRescueCD.iso, по крайней мере, 1 ГБ (лучше, если 2 ГБ, чтобы вы могли переносить две версии SystemRescueCD.iso одновременно, только для тестирования новой версии перед заменой старой), я обычно использую файловую систему Ext4 для этого
- Третий раздел для EFI (который Windows называет ESP), отформатированный как Fat32, по крайней мере с 512 МБ (я видел некоторые ПК, которые при меньшем использовании не показывают USB-накопитель в качестве загрузочного носителя)
- Четвертый раздел для BIOS_Grub (без формата, но очищается при создании)
Одна важная вещь: я видел 8GiB LG USB stric (тот, который у меня есть), который отказывается быть перечисленным при физической загрузке UEFI PC, если разделы не выровнены по цилиндрам, но видны на других компьютерах UEFI, а также на VirtualBOX с загрузкой UEFI режим активирован... при разбиении его, если он выровнен по MiB, он использует все пространство, нет неразделенного пространства около 1 МБ в конце, но при выравнивании по цилиндрам последний неполный MiB не используется... если я делаю MiB, имея это в виду (другими словами, я выполняю ручное выравнивание цилиндров), оно работает, но, как я уже сказал, оно все еще выравнивается по цилиндрам (я делаю это вручную, вместо того, чтобы позволить инструменту разбиения сделать это за вас).
Как получить такую замечательную USB флешку (у нее есть две хитрости):
- Выравнивание разделов по цилиндрам (лучшая совместимость для выравнивания по MiB)
- Выполните grub-install --target=i386-pc, а затем выполните другую grub-install --target=x86_64-efi в том же разделе grub, поэтому вы используете только один grub.cfg для обоих режимов загрузки.
Как это загружается:
- а) загрузка из старого BIOS, загрузит MBR, затем Stage2 раздела grub из BIOS_grub, затем core.img из раздела Grub2
- б) форма загрузки совместима с UEFI, загрузит файл.efi из раздела ESP
- grub.cfg читается (если существует в разделе grub2)
- тогда отображается меню grub2
- затем я выбираю загрузку из цикла SystemRescueCD.iso (с параметром dochace), я установил два параметра, заданных для grub.cfg, один для 32-битных, один для 64-битных (у меня действительно четыре параметра, так как для двух я установил параметр dostartx в загрузиться прямо на GUI).
- после загрузки я могу извлечь USB-флешку (весь Live Linux находится в ramdrive благодаря такому docache), нет необходимости вводить какую-либо команду, pendrive не монтируется (опять же, благодаря параметру docache).
С помощью этой флешки я могу загружать старый компьютер (если они позволяют загружаться с USB) в 32-битной или 64-битной версии (если они имеют расширение для процессора), но загружаться в режиме BIOS.
С помощью этой флешки я также могу загрузить новый компьютер (если они позволяют загружаться с USB) в 32-битной и 64-битной версиях, но загружается в режиме UEFI (ах, да, он может загружаться в режиме UEFI, а затем просто загружать Linux Live SystemRescueCD в 32-битной версии). режим, а также в 64-битном режиме).
Таким образом, у меня есть все в одном USB-накопителе, загрузочном носителе, способном загружаться практически на всех ПК, современных или старых (нужна только поддержка загрузки через USB), независимо от того, 32 бит или 64 бита, BIOS или UEFI и т. Д... и я могу выберите то, что я хочу запустить 32 бита или 64 бита.
Более того, я тестировал на ПК, который отказывается устанавливать Windows 64-битную версию (старый 32-битный процессор), но при этом может запускать 64-битную версию Linux Live (поскольку на этом процессоре есть возможность PAE).
Примечание: такой первый раздел, как NTFS, предназначен для хранения данных, которые можно использовать совместно с Windows 7 и более поздними версиями (XP не увидит его, поскольку не поддерживает разбиение GPT)... он должен быть первым, нет необходимости находиться на начальном часть диска, может находиться где угодно, но, как правило, находится в качестве первой записи в таблице разделов, это вызвано ненавистным режимом Windows для монтирования разделов на съемных, в нем специально запрограммирован код, позволяющий избежать доступа больше, чем к первому разделу, поэтому не может смонтировать остальные одновременно.
Дополнительно для разделов Windows и USB: если вы поменяете местами записи разделов в таблице partitiong, другими словами, вы поместите раздел, к которому хотите получить доступ, как первый в таблице, окна позволят вам получить к нему доступ (если его формат понятен, fat32 и NTFS напрямую, ext2 со специальными драйверами и т. д.), но разрешит доступ только к тому, который находится в первой записи таблицы разделов... есть инструмент (называемый BootICEx86.exe), который может выполнять такую работу в Windows даже не нужно отключать USB-флешку.
Супер экстра: есть также некоторые pendrives (мне очень повезло, что у меня есть Sony 16GiB), которые можно немного изменить с помощью специальных инструментов (мой с инструментом от lexar), поэтому они представляются Windows как жесткий диск USB вместо USB-накопителя после этого изменения все окна позволят вам удалять, создавать и управлять разделами на нем, также можно смонтировать более одного одновременно, каждое со своей буквой.
Пользователи Linux не беспокоятся об этом, так как Linux рассматривает его как разделяемое блочное устройство и не реализует специальный код для блокировки монтирования разделов и т. Д., Как в Windows.
О, да, этот последний абзац написан на тот случай, если кто-то на M$ прочитает их, поэтому их лицо опускается на пол, я пытаюсь (не пойму никогда, я знаю, что это потерянный объект), чтобы они удалили такие некрасивый код из Windows и позволяет пользователям иметь разделы на флешке в родном виде.