mkisofs 오류 - 부팅 이미지...efibot.img가 허용되는 크기가 아닙니다.

mkisofs 오류 - 부팅 이미지...efibot.img가 허용되는 크기가 아닙니다.

BIOS 또는 EFI 서버에서 부팅할 수 있는 rhel-8 설치 디스크에서 사용자 지정 ISO를 생성하려고 합니다. 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는 다음으로 시작됩니다.새로운 세트엘 토리토 부츠매개변수. 하나의 CD에 El Torito 시작 항목을 최대 63개까지 저장할 수 있습니다.

따라서 답변에서 -no-emul-boot나중에 다시 추가해야 한다는 것을 알았습니다. 즉, -eltorito-alt-boot추가된 EFI 이미지 도 작동 -e해야 하며 -no-emul-boot다음 El Torito 항목이고 새 매개변수 세트로 시작하므로 명시적으로 나열되어야 합니다. 다시 필수 매개변수입니다.

질문에서 :

그러나 두 옵션(--eltorito-alt-boot & -e Images/efiboot.img)을 모두 제거하면 부팅 가능한 ISO가 생성됩니다.

처음에도 이 작업을 수행했고 레거시 부팅만 가능한 ISO를 생성했습니다(EFI 없음, -e나중에 USB의 EFI 파티션이 추가됨).

그런데 isohybrid --uefi new.isoUSB에 쓰기 전에 명령이 필요합니다.

좋은 관련 글 + 토론이 있는 것 같습니다.Fedora 17 ISO 이미지 분석, 아직 다 읽지 못했습니다.

PS 다른 많은 옵션이 중요한 이유는 무엇입니까(예: 4 이외의 크기는 문제를 해결하지 못하는 것 같습니다) (아직까지) 찾지 못했습니다. -e이 옵션은 내 시스템의 매뉴얼 페이지에 없는 것 같지만 작동합니다.https://wiki.osdev.org/Mkisofs:

-e ISOPATH 데이터 파일을 EFI El Torito 부팅 이미지로 선언합니다. 이것은 원래 mkisof의 옵션이 아니지만 genisoimage 및 xorriso -as mkisof의 일부 변형에서 이해됩니다.

관련 정보