Booting KDE LiveCD from GRUB

I’m trying to create a USB drive with the option of booting several different LiveCDs. I’m using GRUB as the boot loader there. So the OpenSUSE KDE LiveCD is installed into /opensuse-boot folder on the USB drive, but when I try to boot it by mimicking the ISOLINUX options, that is normally used for booting it, I get to the KIWI part and then get the error that it can’t find a certain configuration file. I assume that it’s looking for config.isoclient, so I set the root folder to be /opensuse-boot, but it still won’t work. My GRUB menu.lst file is currently like this:

title 	openSUSE Live KDE
	root (hd0,0)
	kernel /opensuse-boot/boot/x86_64/loader/linux root=/dev/disk/by-uuid/7ae0b7de-e56b-438a-916a-27efddcd2f8d/opensuse-boot ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent quiet preloadlog=/dev/null showopts 
	initrd /opensuse-boot/boot/x86_64/loader/initrd

Any idea about what’s wrong here?

Oh, and while we’re at it, how do you chainload two GRUBs? If I just select the other partition and do a chainload +1, I get nothing but the word “GRUB” on the screen… And I can’t use the configfile command since GRUB always assumes that it’s on (hd0), thus choosing a new configfile is worthless because all the links to all of the partitions are broken.

Try with syslinux.

All right, I installed EXTLINUX as it’s suggested on the Wiki, but I get problems with that. First of all, when I try to boot it, it gives me a message “Missing operating system” and then proceeds to load GRUB from the hard disk. When I use GRUB to chainload EXTLINUX instead, it shows me the EXTLINUX welcome message and boot options, but it won’t let me input anything for some reason.

Could you tell me the processor of creating this booting USB?

Well, first off I copied everything from the OpenSUSE LiveCD to the USB key, directory /opensuse-boot. Then I created a directory /boot. Then I installed SYSLINUX from the openSUSE repository for easy terminal access to the commands for installing it. Then I ran extlinux -i /media/disk-1/boot (/media/disk-1 is where I have mounted the key), and it created a file extlinux.sys. Then I downloaded the SYSLINUX package from kernel.org, extracted all of the .c32 files that are included in OpenSUSE’s /boot directory and subdirectories, then copied /opensuse-boot/syslinux.cfg to /boot/extlinux.conf and changed all of the links to point to where the files really are. Finally I extracted mbr.bin and did a cat mbr.bin > /dev/sdc (sdc is my USB key drive).

Ok read and translate this Δημιουργία Live και bootable USB](http://forums.opensuse.org/greek/i-i-i-i/i-i-i-iui-i-i-i-i-i-i-i-i-i-i-i-i-isi-i-i-ioei-i-i-i-i/i-iui-i-i-i-i-i-i-i-documentation/453295-i-i-i-i-i-i-i-i-i-i-live-i-i-i-bootable-usb.html)

That way will not allow me to install other LiveCDs on the same USB drive. And that’s the whole point of me doing this in the first place.

I am trying to do the same as you. I can get the iso to boot but it stops, after searching usb devices, saying it can mount the Live image.

I am using grub2 and I have tried three different ways to boot. loopback, grub4dos, and extracted iso. grub4dos clears the screen to fast to see what it did not like. loopback and extracted both stop looking for live image.

One thought I have about why it is stopping is that the initrd in the livecd can not read XFS file systems. I will try loading off the NTFS and EXT3 partitions on the drive. I am having a similar problem with knoppix, might not be able to read xfs.


grub.cfg
menuentry "openSUSE 11.4 LiveCD i686"{
 loopback loop (hd0,2)/isoImages/openSUSE-11.4-KDE-LiveCD-i686.iso
 linux (loop)/boot/i386/loader/linux iso-scan/filename=(hd0,2)/isoImages/openSUSE-11.4-KDE-LiveCD-i686.iso ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent quiet preloadlog=/dev/null showopts
 initrd (loop)/boot/i386/loader/initrd

 #linux16 /boot/grub4dos/grub.exe --config-file="map /isoImages/openSUSE-11.4-KDE-LiveCD-i686.iso (hd32);map --hook;root (hd32);chainloader (hd32);rootnoverify (hd32)"
 #initrd /isoImages/openSUSE-11.4-KDE-LiveCD-i686.iso

 #linux /liveCD/openSUSE11.4i686/boot/i386/loader/linux ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent quiet preloadlog=/dev/null liveinstall showopts
 #initrd /liveCD/openSUSE11.4i686/boot/i386/loader/initrd
}

Dave W