[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[PATCH] lh_binary_syslinux: drop .img off of kernel names so isolinux will boot

> Hi,
> My host system runs Debian etch, with live-helper snapshot version 
> 1.0~a33~20071018.224930.
> If I create an ISO image and run it in Qemu, I get the following error on 
> booting:
> 	FATAL: Int13 eltorito call with AX=4C00
> It was suggested that switching to a different Qemu version would solve 
> this, but that did not work for me. I also tried a newer BIOS from Bochs, 
> which did not help either. Then I tried the image in VMware and there I get 
> a different error:
> 	Cannot load disk image (invalid file)?
> I did manage to make a booting ISO with an older version of the live-helper 
> scripts, so I compared the differences and found out that the problem is 
> related to the name of the kernel image. The ISO does not boot if the 
> kernel image is named "vmlinuz1.img", but it does boot if it is 
> named "vmlinuz1".
> I still don't understand exactly why this happens, but at least I have a 
> workaround now: I modified lh_binary_syslinux to omit ".img" from the 
> kernel image name.
> Bye,
> 		Maarten

nice catch, I tried etch and lenny and they now boot with this patch


diff --git a/helpers/lh_binary_syslinux b/helpers/lh_binary_syslinux
index 68fa0f3..ac053f4 100755
--- a/helpers/lh_binary_syslinux
+++ b/helpers/lh_binary_syslinux
@@ -102,10 +102,11 @@ Syslinux_live_entry ()
       num=$(ls -1 ${KERNEL_PATH}|grep 'vmlinuz.\.img$'|wc -l)
       num=$(($num +1))
-      mv ${KERNEL_PATH}/${KERNEL} ${KERNEL_PATH}/vmlinuz${num}.img
-      mv ${KERNEL_PATH}/${INITRD} ${KERNEL_PATH}/initrd${num}.img
-      KERNEL=vmlinuz${num}.img
-      INITRD=initrd${num}.img
+		# isolinux will not boot images which end in '.img'
+      mv ${KERNEL_PATH}/${KERNEL} ${KERNEL_PATH}/vmlinuz${num}
+      mv ${KERNEL_PATH}/${INITRD} ${KERNEL_PATH}/initrd${num}
+      KERNEL=vmlinuz${num}
+      INITRD=initrd${num}
    # Regular kernel

Reply to: