LINUXTALKS.CO

По состоянию на 2023 год загрузиться в UEFI используя SYSLINUX невозможно

 ,

L


0

1

По состоянию на 2023 год для того, чтобы создать загрузочный ISO, который будет загружаться и в Legacy BIOS режиме, и в UEFI режиме, – необходимо использовать оба загрузчика: и SYSLINUX, и GRUB2.

Хер бы с ним, с SYSLINUX, и с GRUB2, можно ли использовать ХОТЯ БЫ что-то одно? НЕТ!

  • GRUB2 не работает в Legacy BIOS

  • SYSLINUX не работает в UEFI

Поэтому все до сих пор продолжают использовать комбинацию из этих загрузчиков, SYSLINUX для Legacy BIOS, GRUB2 для UEFI.

Объясняю на пальцах.

SYSLINUX прекрасно загружается в режиме Legacy BIOS, оказывается в корневой директории с ISO, находит /boot/vmlinuz, /boot/initrd, и продолжает их загрузку.

UEFI для загрузки требует FAT16, FAT32-раздел. После чего смотрит наличие /EFI/BOOT/BOOTX64.EFI файлика и загружает его.

Суть в том, что файловая система ISO – это не FAT, и UEFI по стандарту не умеет загружаться с ISO. Для того, чтобы ISO стал загрузочный в EFI, прямо на нём создаётся дополнительный раздел, в FAT32, куда уже складываются все необходимые для загрузки файлы.

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

Что делает GRUB2? GRUB2 использует отдельный конфиг, он так и называется «grub-early.cfg», чтобы переключиться из этого раздела туда, где лежит /boot/vmlinuz – найдёт его и загрузит. SYSLINUX так делать не умеет.

Зазрузка в UEFI режиме на ISO для SYSLINUX закрыта, пока что.

Ещё я сказал, что GRUB2 не умеет в Legacy BIOS, – все мои бытовые компьютеры загружаются, а вот HP ProLiant Gen8 не загружается при использовании GRUB2 в качестве Legacy BIOS загрузчика на ISO, тут выручает только SYSLINUX.

В общем, если у вас получится завести один SYSLINUX или один GRUB2 на ISO, дайте мне знать. У меня не получилось. Судя по тому, что все продолжают использовать оба этих загрузчика – это остаётся невозможным.

Решение лично для себя я нашёл простое:

  • Я создаю загрузочный Legacy BIOS образ ISO, куда просто складываю все необходимые ::/EFI файлики.

  • Когда мне нужно грузиться в Legacy BIOS – я использую ISO

  • Когда мне нужно грузиться в UEFI – я простым копированием файлов переношу их на FAT32 USB-флешку и использую флешку

Загрузчик я выбрал SYSLINUX, SYSLINUX в UEFI на флешке чувствует себя прекрасно. Как и в Legacy BIOS на ISO.

Так.

★★★★★★

Ну да.
У меня есть загрузочная флешка, которая запускается везде (MBR, EFI32, EFI64), для EFI там grub2, а для MBR grub4dos (вроде первого груба).
С одной стороны бардак конечно, но всё равно меню надо делать отдельные, из UEFI нельзя установить/запустить шиндошс хр, DOS, мемтест отдельный, и в обратную сторону MBR загрузчик никак не запустит чисто ефишный PE-файл.
Универсально (одинаково и в EFI, и в Legacy) по сути можно запускать только линуксовые ядра.

TheAnonymous    
★★★★★★★★★★
Linux / Firefox
Ответ на: комментарий от Kaschenko

А что у ней внутре? В смысле загрузчики
Вангую, тоже разные, и нескучный гуй для генерирования конфигов и записи всего этого добра на флешку.

TheAnonymous    
★★★★★★★★★★
Linux / Firefox