How to make a multi-purpose boot CD for Puppy

How to do things, solutions, recipes, tutorials
Message
Author
User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

How to make a multi-purpose boot CD for Puppy

#1 Post by rcrsn51 »

A Puppy frugal install involves copying the core files (vmlinuz, initrd.gz and pupxxx.sfs) from the Live CD onto another device and setting up a bootloader to launch them. The following procedure creates a bootable CD based on GRUB that will start Puppy from a variety of target drives.

If the target is a FAT or EXT hard drive partition, a generic version of the boot CD will do. However, GRUB cannot see an NTFS partition or a USB flash drive because it has no native support for these devices. We can solve this problem by putting the first two Puppy files, vmlinuz and initrd.gz, on the boot CD itself. Once the kernel is loaded, Puppy's own hardware detection can take over and locate the remaining files on the target.

This technique should resolve two issues - running Puppy from a flash drive when the system BIOS does not support USB booting, or installing Puppy on a hard drive without having to change the Windows boot mechanism.

Warning! If you copy the Puppy files off the CD using Windows, they may be given upper case names. You must rename them to their lower case versions.

The 'multiboot' attachment below contains a template and script for building your own bootable ISO. Extract the package to /root. It includes a readme file with detailed instructions. The package also has a script for burning your ISO.

The 'pupboot' attachment is a ready-made ISO that boots Puppy off a selection of hard drive partitions.

The 'grub-install' attachment is a tutorial for setting up GRUB on a hard drive in situations where you need manual control over the procedure.

If you are booting your computer through GRUB, you may also want a menu option that can launch a Live CD. Download the 'boot-cd' attachment and follow the enclosed instructions.

The 'grubflop' attachment contains an image of a bootable diskette that serves two purposes.
1. It can launch the Puppy CD (or any other Live CD) on machines where the optical drive is not bootable.
2. It can boot a frugal install of Puppy off the hard drive.

Extract it and burn the diskette with the command: dd if=grubflop.img of=/dev/fd0
If working from Windows, use the enclosed program rawrite2.exe

The 'fixmbr' attachment contains an ISO image of a bootable CD based on FreeDOS. You can use it to restore a Windows MBR that has been overwritten by a Linux bootloader.
Burn the image and boot your machine off it.
At the A> prompt, type the command: fdisk /mbr
Remove the CD and reboot.

Update. New Puppies have a command that can restore a WinXP MBR in one step.

Code: Select all

ms-sys --mbr --write /dev/sda
Attachments
boot-cd.tar.gz
(22.28 KiB) Downloaded 1878 times
grub-install.tar.gz
(58.25 KiB) Downloaded 2664 times
grubflop.tar.gz
(93.11 KiB) Downloaded 2376 times
multiboot.tar.gz
(116.2 KiB) Downloaded 2484 times
pupboot.zip
(116.08 KiB) Downloaded 3467 times
Last edited by rcrsn51 on Mon 11 Apr 2011, 12:22, edited 13 times in total.

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#2 Post by Aitch »

Bump!

Thx for Freenas info - just what I needed

Aitch

Njorl
Posts: 3
Joined: Sun 25 May 2008, 23:44
Location: London UK

Explain stage1 and stage2 & how to retro-edit ISO

#3 Post by Njorl »

Please answer a small query: in multiboot\pupboot\boot\grub what are stage1 and stage2? Before I found these instructions, I'd been attempting a similar goal (using the mkisofs example from http://www.freesoftwaremagazine.com/art ... page=0%2C1). I made a DVD that ran a single Puppy version (4.00) from Grub, but did not contain stage1 or stage2, just stage2_eltorito.

Also, if I edit my ISO (I need to try the one from this example) with ISO Master, even just trying “save as

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

#4 Post by rcrsn51 »

Optical disks don't have partitions and MBRs like hard drives so the terms stage1 and stage2 don't apply. You have already discovered that GRUB uses the stage2_eltorito file to make a bootable CD.

Instead of trying to remaster a boot CD, download the "multiboot" package and make your own from scratch.

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

Pupboot

#5 Post by reborn »

Hi, I'm new here and have spent some time perusing the various forums, gleaning as much information as possible. I'm impressed with the helpfullness of everybody here, and Puppy!

I've progressed from BBC Micro to Oric to Amiga to PC, currently running XP on a HP Pavilion dv8219ea Laptop (Intel Centrino Duo & nVidia Go 7400 graphics adapter, 1gb ram). I've been trying various LiveCD's and have decided Puppy Linux is going to be the next stage of my evolution.

Which brings me to my question, I plan to do a frugal install to the (C drive) NTFS partition and boot it from CD. I've downloaded Pupboot and added vmlinuz + initrd.gz to the ISO. Do I still need to put those two files with the other two core files to the root of C?
And do I need to edit menu.lst, as I notice for USB root is (cd) - logically my scenario is the same.

Looking forward to an interesting time with Puppy as I love to tinker!
Thanks in advance.

GeoW
Posts: 150
Joined: Tue 01 Jan 2008, 00:25
Location: New Jersey, USA ( East Coast )

Frugal install to NTFS

#6 Post by GeoW »

reborn,

Welcome!

Check out these excellent instructions. I think it is exactly what you want
to do.

http://www.icpug.org.uk/national/linnwi ... innwin.htm

Have Fun,

GeoW

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

Frugal Install to NTFS

#7 Post by reborn »

Thankyou GeoW

Looks an interesting way of doing it, can you/anyone check these for me please - this is what I've done so far in preparation.

a)The menu.lst

# GvR Sept 30th 2004
color black/cyan yellow/cyan
timeout=5
default=0

title Default Boot on HD 0
rootnoverify (hd0,0)
chainloader +1
boot

title Puppy Linux 4.00
kernel (hd0,0)/vmlinuz PMEDIA=idehd PDEV1=hda1 psubdir=puppy400
initrd (hd0,0)/initrd.gz
boot


And b) boot.ini

[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /NoExecute=OptOut
c:\grldr="Start Linux"

I've got all the files I need and am ready to go (later, it's 4.15am here!)

Note XP Service Pack 3

ICPUG
Posts: 1308
Joined: Mon 25 Jul 2005, 00:09
Location: UK

#8 Post by ICPUG »

reborn,

Your menu.lst and boot.ini look OK for a standard PC with IDE/PATA drives with Windows installed on the first partition of the first hard disk drive. That's all a bit technical but this is the usual standard for an old machine

As you seem to have a newer machine you may have SATA disk drives. In this case some changes will be required to menu.lst (which are given in the Lin'N'Win instructions).

If SATA/PATA/IDE is technobabble then try what you have got and if it fails saying it cannot find the files, try the SATA option.

ICPUG

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

Sata

#9 Post by reborn »

Many thanks ICPUG, you are absolutely right I have 2x60gb Sata Hard Drives in this laptop.

I've now amended the menu.lst according to the instructions at Lin'N'Win - looks like I'm good to go.

I'll report back later.

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

#10 Post by reborn »

As a matter of interest and future reference does anyone have an answer to my original question (even though I'm not taking that route now)
Which brings me to my question, I plan to do a frugal install to the (C drive) NTFS partition and boot it from CD. I've downloaded Pupboot and added vmlinuz + initrd.gz to the ISO. Do I still need to put those two files with the other two core files to the root of C?
And do I need to edit menu.lst, as I notice for USB root is (cd) - logically my scenario is the same.
reborn

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#11 Post by Aitch »

As a matter of interest and future reference does anyone have an answer to my original question
I think you need wolf pup

http://www.murga-linux.com/puppy/viewtopic.php?t=31892

or Steven Binion for that!

http://www.murga-linux.com/puppy/viewtopic.php?t=26992

Aitch

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

#12 Post by rcrsn51 »

In previous versions of Puppy, it was sufficient to put the first two files on the boot medium and the two sfs files on the target. But at some point near the end of the 2.x series, BarryK changed something that required one or both of the initial files to also be on the target. I haven't checked the 4.x series to see what the requirement is now. But it would be easy to run some tests yourself. In any case, the initial files are small.

The menu.lst entry to launch Puppy in an NTFS partition would be the same as for a flash drive, except for the PMEDIA argument. There is an example of this in the readme file that comes with the "multiboot" attachment.

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

#13 Post by reborn »

Thanks rcrsn51, downloaded, read and understood, it's how I thought it should be. I'll do some tests on the location of vmlinuz + initrd.gz.

Aitch, thanks to you too - I'm currently downloading this Retro Pup to try. It'll give me a chance to try some other flavours and I'll be able to see how the multiboot is done on that!

The Steve Binion post is beyond me at the moment, I'll be looking up Qemu later. It sounds as if it is doing something I read about on another distro - copying the .iso to the hard drive and booting from there as a virtual cd drive.

Thanks all, now to some more tinkering - when the Retro Pup has finished downloading.

Reborn

katutxakurra
Posts: 3
Joined: Mon 21 Apr 2008, 16:47

how to add files and options when remastering

#14 Post by katutxakurra »

hi everybody!
I want to remaster puppy to another live cd and put some information files on my-documents folder when you start it. Links to information webs and configuration, such as the seamonkeys home page and the run action for .exe files that i want to open with wine.
How can I do that? thank you very much for helping and sorry for my english.
byee

reborn
Posts: 35
Joined: Wed 30 Jul 2008, 07:44
Location: Turgutreis, Turkey

#15 Post by reborn »

Update: On the HP laptop running XP Service Pack 3 I frugally installed Muppy Minisys & Macpup Dingo - with all the files in their respective subdirectories (C:/muppy & C:/macpup) ran fine. Using the Lin'N'Win method. (No vmlinuz, initrd.gz in root)

I now have a new desktop system (many problems with laptop) and the grub loader 'grldr' freezes the system (black screen - have to push reset).
New System: Intel Core 2 Quad Q9450, Asus Rampage Formula Mobo, Aus N8800GT Extreme Geforce 1GB DDR3, 4gb OCZ DDR2 Reaper ram.
Running XP Pro SP3

Live distros, in the main, work fine - so I will be using the 'multiboot' scenario from rcrsn51's original post.

reborn
**

User avatar
Mr. Maxwell
Posts: 215
Joined: Sat 30 Aug 2008, 23:56
Location: Nebraska, USA

#16 Post by Mr. Maxwell »

I have a 9 year old laptop that has puppy installed on the hard drive (the hard drive only has one partition). I would also like to boot of my USB flash drive (16GB, first partition is 10GB FAT32 storage, second partition is 3GB ext3 Puppy, third is 3GB ext3 nothing yet, maybe another Puppy in the future).

The problem is my BIOS does not support USB booting and your pup2usb does not work. I followed the instructions carefully and everything went OK but when I rebooted the computer it went to the grub prompt instead of the menu. I have another boot/menu.lst on my hard drive which I have been booting off of, can I just use this one instead of putting one on my flash drive?

I have GRUB on a floppy BTW.

Thanks.
[url=http://www.tribalwars.net/3389956.html]Super amazing game![/url]

User avatar
Mr. Maxwell
Posts: 215
Joined: Sat 30 Aug 2008, 23:56
Location: Nebraska, USA

#17 Post by Mr. Maxwell »

I got it to work! This is taken from menu.lst on my puppy hard drive installation:

Code: Select all

  title Puppy on partition two of Mr. Maxwell's flash drive
  root (hd0,0)
  # vmlinuz is in /boot/ of my puppy hard drive installation
  # the root=/dev/sdb2 tells linux to launch puppy off partition 2 of my
  # flash drive (which puppy's installed to)
  kernel /boot/vmlinuz root=/dev/sdb2 ro vga=normal
  # initrd.gz is also in /boot/ of my puppy hard drive installation
  initrd /boot/initrd.gz
[url=http://www.tribalwars.net/3389956.html]Super amazing game![/url]

User avatar
rjbrewer
Posts: 4405
Joined: Tue 22 Jan 2008, 21:41
Location: merriam, kansas

#18 Post by rjbrewer »

A questions remains:

With puppy on an ext 3 partition; will you be able to stick the
flashdrive into a "windows" computer and boot from it?

Inspiron 700m, Pent.M 1.6Ghz, 1Gb ram.
Msi Wind U100, N270 1.6>2.0Ghz, 1.5Gb ram.
Eeepc 8g 701, 900Mhz, 1Gb ram.
Full installs

User avatar
Mr. Maxwell
Posts: 215
Joined: Sat 30 Aug 2008, 23:56
Location: Nebraska, USA

#19 Post by Mr. Maxwell »

That's a good question but I have no idea. :D The BIOS on both of my windows computers are very weird and I cannot boot puppy on them. (I'll worry about this when I get new computers to replace them, right now windows is fine) If you go off of how windows treats each partition as a seperate device it should be able to boot off of the second partition. As for the ext3 filesystem I don't think that would make a difference, as long as it can read the boot sector (or whatever it's called) it should boot right?

But the easy way to find out is, grab a flash drive, reformat to ext3, put Puppy on it, stick it in a windows computer, and see if it boots.
[url=http://www.tribalwars.net/3389956.html]Super amazing game![/url]

User avatar
rjbrewer
Posts: 4405
Joined: Tue 22 Jan 2008, 21:41
Location: merriam, kansas

#20 Post by rjbrewer »

My question was rhetorical:

The flash drive will only boot on the computer you have the
grub list for it installed on.

If instead; you had made a 1st vfat partition for puppy and
used the simple universal installer method, the flash drive
would be bootable on almost any windows or linux computer that
has a usb port. Including your own. No grub necessary.

Inspiron 700m, Pent.M 1.6Ghz, 1Gb ram.
Msi Wind U100, N270 1.6>2.0Ghz, 1.5Gb ram.
Eeepc 8g 701, 900Mhz, 1Gb ram.
Full installs

Post Reply