Faça o próprio isolinux 4.0.3 chainload

Faça o próprio isolinux 4.0.3 chainload

Eu tenho um iso inicializável que inicializa no isolinux 4.0.3 e quero fazê-lo carregar em cadeia (meu objetivo real é carregar em cadeia o isolinux.bin v4.0.1-debian, que deve iniciar o Live CD Ubuntu10.10, mas por enquanto Eu só quero fazer com que ele seja carregado em cadeia).

Não consigo fazer com que o isolinux carregue em cadeia qualquer isolinux.bin, não importa a versão. Ele congela ou mostra uma mensagem de “erro de soma de verificação”. Estou usando o VMWare para testar o iso.

Coisas que tentei:

.com32 /boot/isolinux/chain.c32 /boot/isolinux/isolinux-debug.bin (chainload self)

isso mostra

Loading the boot file...
Booting...

ISOLINUX 4.03 2010-10-22  Copyright (C) 1994-2010 H. Peter Anvin et al
isolinux: Starting up, DL = 9F
isolinux: Loaded spec packet OK, drive = 9F
isolinux: Main image LBA = 53F00100

...e a ​​máquina congela.

Então eu tentei isso

(chainload GRUB4DOS 0.4.5b)
chainloader /boot/isolinux/isolinux-debug.bin

Resultado:

Error 13: Invalid or unsupported executable format

Próxima tentativa:

(chainload GRUB4DOS 0.4.5b)
chainloader --force /boot/isolinux/isolinux-debug.bin
boot

Resultado:

ISOLINUX 4.03 2010-10-22  Copyright (C) 1994-2010 H. Peter Anvin et al
isolinux: Starting up, DL = 9F
isolinux: Loaded spec packet OK, drive = 9F
isolinux: No boot info table, assuming single session disk...
isolinux: Spec packet missing LBA information, trying to wing it...
isolinux: Main image LBA = 00000686
isolinux: Image checksum error, sorry...

Boot failed: press a key to retry...

Eu tentei outras coisas, mas todas falharam miseravelmente. Alguma sugestão?

Responder1

Você precisará de chain.c32:

LABEL chain_isolinux
COM32 /boot/isolinux/chain.c32
APPEND isolinux=/boot/isolinux/isol401.bin

http://syslinux.zytor.com/wiki/index.php/Comboot/chain.c32

Você também precisa fazer seu ISO corretamente. Você precisa da opção -boot-info-table.

mkisofs -o output.iso -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table CD_root

Você também pode adicionar parâmetros adicionais ao mkisofs (como adicionar suporte para Rock Ridge, ...).

informação relacionada