USB Multiboot

19 05 2010

After spending several hours on the internet trying to find out the best way to boot multiple os’ off one usb stick, I decided to post the way that I finally got everything working.

Tools Used

4GB integral usb stick

Grubinstgui, Grub4dos, memdisk

First I formatted the disk using fat32 file system in windows. Sometimes this option was not available so I also have a fat32convert exe just in case. Next I used the grubinstgui to prepare the usb’s mbr for booting. To find the device id (disk#) simply go to computer management (start-run-compmgmt.msc) then disk management and look for removable device. –>Be sure you select the correct drive as choosing the main hard drive may make it unbootable until fixed!<–

device manager

Next I copied grldr and memdisk to the root of the usb, and created a blank text file called menu.lst

The USB is now bootable and all I had to do was find the right configs for the menu.lst file to get the isos to boot off the usb. My menu.lst is as follows:

color white/black black/white
timeout 120
gfxmenu /message

title Command Line
commandline

title Boot from Hard Drive\n
rootnoverify (hd0,0)
chainloader (hd0,0)+1

title Hirens Dos BootCD
find –set-root /HBCD/boot.gz
kernel /HBCD/memdisk
initrd /HBCD/boot.gz

title Mini Windows Xp
find –set-root /HBCD/XPLOADER.BIN
chainloader /HBCD/XPLOADER.BIN

title Clonezilla
root  (hd0,0)
kernel /images/clonezilla/live/vmlinuz boot=live union=aufs vga=788 ip=frommedia live-media-path=/images/clonezilla/live bootfrom=/dev/hda toram=filesystem.squashfs
initrd /images/clonezilla/live/initrd.img
boot

title Gparted Live
configfile /gparted_submenu.lst

title Ubuntu 9.10 Desktop
find –set-root /ubuntu-9.10-desktop-i386.iso
map /ubuntu-9.10-desktop-i386.iso (0xff)
map –hook
root (0xff)
kernel /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper iso-scan/filename=/ubuntu-9.10-desktop-i386.iso quiet splash locale=en.UTF-8 –
initrd /casper/initrd.lz
boot

title System Rescue CD 1.5.3
map (hd0,0)/systemrescuecd-x86-1.5.3.iso (hd32)
map –hook
chainloader (hd32)
boot

title Ultimate Boot CD 4.11
map (hd0,0)/ubcd411.iso (hd32)
map –hook
chainloader (hd32)
boot

title Restart The Computer
reboot

Menu.lst

title Main-menu
configfile /menu.lst

title GParted Live 0.4.5-2
kernel /live/vmlinuz boot=live union=aufs noswap noprompt vga=791 ip=frommedia nolocales root=
initrd /live/initrd.img

title GParted Live(RAMFS, media can be removed)
kernel /live/vmlinuz boot=live union=aufs noswap noprompt vga=791 toram ip=frommedia nolocales
initrd /live/initrd.img

title GParted Live(Safe graphic settings, vga=normal)
kernel /live/vmlinuz boot=live union=aufs noswap noprompt ip=frommedia nolocales vga=normal
initrd /live/initrd.img

title GParted Live (Failsafe mode)
kernel /live/vmlinuz boot=live union=aufs noswap noprompt acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp ip=frommedia nolocales vga=normal
initrd /live/initrd.img

gparted_submenu.lst

Only clonezilla and hirens boot cd had to be extracted (so far) in order to get them working. My bootable usb also included a higher res splash screen using gfxmenu. All I did with the archive was extract it, run the unpack command and replace the background (gfxmenu\files\back.jpeg) with a different one. Then I ran the repack command, copied message (gfxmenu\message) to the usb root and added the following code to menu.lst before anything else is loaded.

gfxmenu /message

References

http://www.userbytes.com/roll-your-own-multiboot-usb-flash-drive/

http://sourceforge.net/projects/grub4dos/

http://diddy.boot-land.net/grub4dos/Grub4dos.htm

Advertisements

Actions

Information

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s




%d bloggers like this: