Create bootable multi puppies CD with Grub stage2_eltorito

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
User avatar
trio
Posts: 2076
Joined: Sun 21 Dec 2008, 15:50
Location: अनà¥￾मोदना

Create bootable multi puppies CD with Grub stage2_eltorito

#1 Post by trio »

Hi, just thought I wanna share this ... if it hasn't been shared yet :)

Benefits:
1. You can make a multi puppies bootable CD that you could choose which puppy you want to boot, this is my case --> lost my harddisk on this old lappy, but it still has CD Drive but No USB Boot BIOS support, so I boot from CD and put my save files on the USB Flash (for CD-RW see point 3)
2. Even you can boot any other Linux on your HDD for example (by editing Grub menu entry at boot/pressing "E" button)
3. I have not done this with CD-RW only CD-R, but It's most logical to have a Multi Session - Multi Puppies bootable CD - with many pupsave files

How to:
A. First you must have a Grub "stage2_eltorito" or download it if you don't have it already (please just google the word)
B. Follow this instructions (GNU_GRUB_(0.97)_Simplified_for_Newbies_by_Joydeep Bakshi) http://jbakshi.50webs.com/Linux_tutoria ... ified.html:

1> Make a directory for the bootable image, say, `CD_GRUB' anywhere on your computer

2> Make a directory for GRUB --> CD_GRUB/boot/grub

3> Copy the file `stage2_eltorito' to CD_GRUB/boot/grub

4> Create the config file `menu.lst' under `CD_GRUB/boot/grub' --> CD_GRUB/boot/grub/menu.lst

The 'savedefault' command in each operating system's boot entry cause GRUB not to work from a CD. The 'savedefault' command in a hard-disk writes to a file in /boot/grub named 'default', and records the last system that was booted. We cannot use this when running GRUB from a CD, because we can't write changes to a CD with GRUB. So we need to delete all instances of the savedefault command.

Example menu.lst:

Code: Select all

timeout 30
color black/cyan yellow/cyan
default 0

title Puppy Lucid 520
   root (cd)
   kernel /lucid/vmlinuz
   initrd /lucid/initrd.gz

title Puppy 431
   root (cd)
   kernel /431/vmlinuz
   initrd /431/initrd.gz
(you may want to add your preferred boot parameters, up to you)

5> Copy needed files from your desired iso (vmlinuz, initrd.gz, pupxxx.sfs) and put them in the right folder path as configured in the menu.lst (in the above example: create lucid and 431 --> CD_GRUB/lucid and CD_GRUB/431 )

6> Now make a ISO9660 image file like this
Open terminal at the place you put the folder CD_GRUB, then execute this command:

Code: Select all

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \
-boot-load-size 4 -boot-info-table -o cd_grub.iso CD_GRUB
Note: boot-load-size 4 bit is required for compatibility with the BIOS on many older machines.

7> Burn the created .iso image

That's it ... hope this can be useful
Last edited by trio on Tue 15 Feb 2011, 03:14, edited 5 times in total.

User avatar
trio
Posts: 2076
Joined: Sun 21 Dec 2008, 15:50
Location: अनà¥￾मोदना

Reserved

#2 Post by trio »

You can also create a CD of stage2_eltorito alone (same process above without the puppy's files) ... only for boot-up CD to boot puppy on hdd for example, same function as wakepup diskette
Last edited by trio on Tue 15 Feb 2011, 09:32, edited 1 time in total.

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#3 Post by jamesbond »

Not to dampen your spirit, but isn't this what Multipup from puppylovr is doing?
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

User avatar
trio
Posts: 2076
Joined: Sun 21 Dec 2008, 15:50
Location: अनà¥￾मोदना

#4 Post by trio »

@Jamesbond:
And I quote myself: "Hi, just thought I wanna share this ... if it hasn't been shared yet"

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#5 Post by jamesbond »

trio wrote:@Jamesbond:
And I quote myself: "Hi, just thought I wanna share this ... if it hasn't been shared yet"
That's the spirit :D Just want to let you know so that you don't have to re-invent the wheel - unless you like doing so (sometimes I do that, too - re-inventing the wheel enables one to understand its working better :D )
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#6 Post by rcrsn51 »

You can also use grldr from grub4dos instead of /boot/grub/stage2_eltorito as the boot code. I found that this worked on a few machines where the conventional method did not.

Post Reply