Problem with isolinux/memdisk
#1
Posted 20 June 2007 - 05:17 PM
Initially I started with BCDW 1.50, but could only boot floppy images, not CD ISOs, neither directly nor through their extracted bootsector as indicated in the instructions.
I then realized that BCDW 1.50 was no longer maintained and a newer version from another author existed.
So i tried with BCDW 2.01 and (after taking the bcdwboot.bin bootsector from the older version to make it boot!?) succeeded in booting also no-emulation CD images directly, but not images of Linux based CDs, for which I learned that isolinux/memdisk was needed.
After finding out where to put the files I finally succeeded in booting small images such as SmartBootManager (and also a Dos based floppy image of PartitionMagic).
I still fail when trying to boot larger images such as GParted, WarLinux, UBCD, etc.
What I tried, for instance, with gparted-livecd-0.3.4-6.iso was (all tests in qEmu):
renaming it to a short name: Gparted.iso,
making it low case: gparted.iso,
making it a *.img file: gparted.img,
moving it to the root,
booting it through its extracted bootsector,
and always failed!!!
When booting the image the boot process starts with isolinux.bin, then memdisk is loaded, the image starts loading ... and hangs. (See first screen).
When booting its bootsector without memdisk a checksum error is shown. (See second screen).
When booting its bootsector through memdisk, see third screen.
With newer versions of isolinux/memdisk the boot process doesn't even start.
If one attempts to boot the ISO directly (no isolinux/memdisk) the process hangs at a grub command line.
Did anybody succeed in a similar task? I've searched the Internet and other forums to no avail, and the only success cases I've heard of are when booting the content of a CD from a folder, not an image.
Thanks for any suggestion.
edborg
#2
Posted 20 June 2007 - 06:18 PM
It would be nice if you would post what actually entries in the menu you used.
Though my guess is that you need anyway a (gzipped) extacted from .iso Linux kernel, something like:
isolinux /gparted/gparted initrd=/gparted/gparted.igz root=/dev/ram0 init=/linuxrc vga=788 looptype=squashfs loop=/gparted.dat dokeymap cdroot splash=silent nosound docache
http://gparted-forum...ic.php?pid=1038
jaclaz
#3
Posted 21 June 2007 - 09:28 AM
Thanks for your help!
This is what I did (with BCDW2.01):@edborg
It would be nice if you would post what actually entries in the menu you used.
Renamed gparted-livecd-0.3.4-6.iso (perfectly booting in qEmu and from a CD) to gparted.img
Downloaded isolinux.bin and memdisk to use them, according to the instructions, to (attempt to) boot the image.
This was my layout:
\bcdw\bcdw.ini
\images\gparted.img
\isolinux\isolinux.bin
\isolinux\memdisk
And this the command line in bcdw.ini:
/isolinux/isolinux.bin ; Gnome Partition editor (isolinux); ; /isolinux/memdisk initrd=/images/gparted.img
What's wrong with that?
------------------------------------------
However, following your suggested different approach I did some progress, but I'm still (a lot) confused.
As I unfortunately don't understand your syntax above, I tried following exactly the instructions in your link.
To do this, I had to download gparted-livecd-0.3.1-1.iso, and succeeded (both with BCDW1.50 and BCDW2.01) in booting it, with the following command line:
/ISOLINUX/ISOLINUX.BIN ; GNOME Parted V0.3 ; gparted; /ISOLINUX/KERNEL APPEND noapic
initrd=initrd.gz root=/dev/ram0 init=/linuxrc ramdisk_size=65000
I only had to change the layout from the suggested (not working):
\BCWD\GPARTED
\BCWD\ISOLINUX\BOOT.CAT
\BCWD\ISOLINUX\BOOT.MSG
\BCWD\ISOLINUX\INITRD.GZ
\BCWD\ISOLINUX\ISOLINUX.BIN
\BCWD\ISOLINUX\
\BCWD\ISOLINUX\
\BCWD\ISOLINUX\SPLASH.LSS
to the following:
\BCWD\GPARTED
\ISOLINUX\BOOT.CAT
\ISOLINUX\BOOT.MSG
\ISOLINUX\INITRD.GZ
\ISOLINUX\ISOLINUX.BIN
\ISOLINUX\
\ISOLINUX\
\ISOLINUX\SPLASH.LSS
The problem is that gparted-livecd-0.3.4-6.iso has COMPLETELY different files and layout that, not understanding the syntax, I can't figure out how to adapt.
Where can I find explanations for that?
If I could understand the logic, I could try to boot also other ISOs, such as gparted-livecd-0.3.4-6, Warlinux, UBCD, and others.
Thanks
edborg
#4
Posted 21 June 2007 - 10:11 AM
1) A Kernel (a Linux one or memdisk, which is a "kernel")
2) A linux initrd (initial ram disk)
http://www-128.ibm.c...y/l-initrd.html
3) The actual iso image
What you succeeded in doing is however NOT booting from .iso, but rather booting from RAMdisk:
root=/dev/ram0 init=/linuxrc ramdisk_size=65000
.iso booting is when you "loop mount" the image as in:
looptype=squashfs loop=/gparted.dat
I am really not much an expert on this, but as far as I know, what BCDW actually does in a setup like yours is to "call" isolinux passing to it the SAME parameters you would otherwise (bootsector calling directly isolinux) put in ISOINUX.CFG.
So what you should research is how to boot with isolinux (NOT through BCDW) and the entries one should use for the various distros in isolinux.cfg, then "translate" this entries in parameters to be passed to isolinux by BCDW.
These might help you:
http://www.msfn.org/...D_I_t94398.html
http://www.bootcd.us/Build_CECD.php
http://members.chell...100/ILpart1.htm
http://linux.dell.co...E-and-HowTo.txt
jaclaz
#5
Posted 21 June 2007 - 12:01 PM
What I had successfully done at the beginning is exactly what is explained in the second of your links above:
and simplistically thought that it was possible to apply the same procedure to any other image, but unfortunately that only works for SmartBootManager!Smart Boot manager allows you to choose and boot any OS currently installed in the Hard Drive. Adding Smart Boot manager is no problem if you have added the R.I.P. Linux. But if you don't want R.I.P. Linux but want the functionality of Smart Boot Manager, then download isolinux and memdisk and extract it's contents to the root of Emergency CD. Now download Smart Boot Manager floppy image and place it in "EMCD\Floppies". Then make sure that the following files are present:
EMCD\isolinux\isolinux.bin
EMCD\boot\memdisk
EMCD\Floppies\\sbm.img
<Note: If you have R.I.P Linux, they will already be present> Now add the following line to bootcat.ini:
/isolinux/isolinux.bin ; Smart boot manager ; ^ Smart Boot Manager.^ ; /boot/memdisk initrd=/Floppies/sbm.img
Now you can start Smart Boot manager from Emergency CD and boot into your Operating Systems in the hard drive!
I'll see what I can manage to do, thanks.
edborg
#6
Posted 22 June 2007 - 12:21 PM
bcdw.ini
\boot\isolinux\isolinux.bin; Boot and Nuke; ^ Securely wipes HDD ^ Version 2007042900 Beta; dbanisolinux.cfg
LABEL dban KERNEL dban.bzi APPEND nuke="dwipe" silent
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users