ошибка mkisofs - загрузочный образ...efibot.img недопустимого размера

ошибка mkisofs - загрузочный образ...efibot.img недопустимого размера

Я пытаюсь создать пользовательский ISO с установочного диска rhel-8, который может загружаться как на BIOS, так и на EFI-сервере. Все идет хорошо, пока я не пытаюсь создать iso. Если я запускаю следующую команду:

mkisofs -J -R -T -V "NGS-8.4-0 Server" \
    -o ngs-8.4-0.iso \
    -b isolinux/isolinux.bin \
    -c isolinux/boot.cat \
    --no-emul-boot \
    --boot-load-size 4 \
    --boot-info-table \
    --eltorito-alt-boot \
    -e images/efiboot.img \
    -m TRANS.TBL \
    ngs-dvd

Я получаю следующий вывод:

Creating NGS iso...I: -input-charset not specified, using iso-8859-1 (detected in locale settings)

(bunch of TRANS.TBL output deleted)

Size of boot image is 4 sectors -> No emulation
Size of boot image is 19612 sectors -> genisoimage: Error - boot image '/NGS/ngs-dvd/images/efiboot.img' has not an allowable size.

Однако, если я удалю две опции ( --eltorito-alt-boot& -e images/efiboot.img), то создастся загрузочный iso. Что я делаю не так?

решение1

Похоже, мне эта -no-emul-bootопция понадобилась дважды. По одной для каждого загрузочного образа (BIOS и EFI). Окончательная рабочая конфигурация была такой:

/usr/bin/mkisofs -J -R -T -V "NGS-8.4-0 Server" \
    -o ngs-8.4-0.iso \
    -b isolinux/isolinux.bin \
    -c isolinux/boot.cat \
    -no-emul-boot \
    -boot-load-size 4 \
    -boot-info-table \
    -eltorito-alt-boot \
    -e images/efiboot.img \
    -no-emul-boot \
    -m TRANS.TBL \
    ngs-dvd

решение2

Из страницы руководства:

-eltorito-alt-boot Начать сновый наборсапог Эль ТоритопараметрыНа одном компакт-диске можно сохранить до 63 загрузочных записей El Torito.

Таким образом, вывод в вашем ответе о том, что вам нужно добавить -no-emul-bootеще раз после, -eltorito-alt-bootозначает, что добавленный образ EFI -eтакже должен -no-emul-bootработать правильно, и поскольку это следующая запись El Torito и она начинается с нового набора параметров, необходимые параметры должны быть явно перечислены снова.

Из вопроса:

Однако если я удалю две опции (--eltorito-alt-boot и -e images/efiboot.img), то будет создан загрузочный iso.

Я тоже изначально так делал, создавался ISO-образ, который приводил только к устаревшей загрузке (без EFI, -eдобавлялась часть, которая позже становилась разделом EFI на USB).

Кстати, перед записью на USB isohybrid --uefi new.isoнужна команда.

Кажется, есть хороший связанный пост+обсуждениеАнатомия образа Fedora 17 ISO, Я еще не все прочитал.

PS почему многие другие параметры являются критическими (например, ни один размер, кроме 4, похоже, не работает) я не смог выяснить (на данный момент). -eoption, похоже, отсутствует в man-страницах моей системы, но работает.https://wiki.osdev.org/Mkisofs:

-e ISOPATH объявляет файл данных как образ загрузки El Torito для EFI. Это не опция оригинального mkisofs, но понимается некоторыми вариантами genisoimage и xorriso -as mkisofs.

Связанный контент