How to add Puppy with Linux/GRUB already on hd? (Solved)
How to add Puppy with Linux/GRUB already on hd? (Solved)
I am not sure about how the Puppy universal installer works, and I want to install Puppy on a machine already running another OS which I use for work, so I want to be sure about what to do before I start.
The machine currently has another linux distribution + grub, and a free partition, into which I wish to install Puppy.
Will the installer add the necessary lines to the GRUB config file, or should I expect to edit it myself, and if so, how exactly?
The machine currently has another linux distribution + grub, and a free partition, into which I wish to install Puppy.
Will the installer add the necessary lines to the GRUB config file, or should I expect to edit it myself, and if so, how exactly?
I'm Not sure
about how the installer works but maybe this thread on grub will help
I've not had much luck using the installer to put puppy on a linux system and have done it manually, a process I am comfortable with. First you need a place to put the boot files. On my system, I have a FAT32 partition on the linux drive to make it easier to transfer files to Windows and Puppy is quite happy there. My winfat32 directory looks like this from slackware:
You will need to copy initrt.gz, pagefile.sys, pup_202.sfs and vmlinuz from the CD to your destination.
Next I tell grub where to look by editing /boot/grub/menu.lst. Mine looks like this:
I have 2 hard drives with the first set up for XP and the second for Linux so you will need to figure out your partitions and adjust accordingly.
Code: Select all
drwxr-xr-x 3 cplater users 8192 2005-12-16 11:56 Recycled/
drwxr-xr-x 3 cplater users 8192 2005-12-16 11:56 System Volume Information/
-rwxr-xr-x 1 cplater users 0 2006-08-13 03:46 idehd*
-rwxr-xr-x 1 cplater users 1273954 2006-08-13 03:45 initrd.gz*
-rwxr-xr-x 1 cplater users 1609801728 2006-09-17 13:00 pagefile.sys*
-rwxr-xr-x 1 cplater users 185221120 2006-08-13 03:46 pup_202.sfs*
-rwxr-xr-x 1 cplater users 268435456 2006-09-16 00:16 pup_save.3fs*
-rwxr-xr-x 1 cplater users 1688197 2006-08-13 03:45 vmlinuz*
Next I tell grub where to look by editing /boot/grub/menu.lst. Mine looks like this:
Code: Select all
# GRUB configuration file '/boot/grub/menu.lst'.
# generated by 'grubconfig'. Fri Dec 16 18:33:01 2005
#
# The backup copy of the MBR for drive '/dev/hda' is
# here '/boot/grub/mbr.hda.790'. You can restore it like this.
# dd if=/boot/grub/mbr.hda.790 of=/dev/hda bs=512 count=1
#
# Start GRUB global section
timeout 20
color light-gray/blue black/light-gray
splashimage=(hd1,0)/boot/grub/grug.xpm.gz
# Linux bootable partition config begins
title Slackware 10.2-2.6.13
root (hd1,0)
kernel /boot/vmlinuz-generic-2.6.13 ro root=/dev/hdb1 vga=791
initrd /boot/initrd.gz
title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader +1
title Slackware 10.2-2.4.31
root (hd1,0)
kernel /boot/vmlinuz root=/dev/hdb1 ro noinitrd vga=791
title Puppy 2.02
rootnoverify (hd1,4)
kernel (hd1,4)/vmlinuz root=/dev/ram0 PFILE=pup_202.sfs PHOME=hdb5
initrd /initrd.gz
i don't think Puppy 2.x uses the PHOME and PFILE variables ... my menu.lst file looks something like this:
title = Puppy 2.10
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd /initrd.gz
this is for a frugal install
if you want a "normal" option 2 install (copying all the files to a partition), menu.lst will be configured differently
title = Puppy 2.10
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd /initrd.gz
this is for a frugal install
if you want a "normal" option 2 install (copying all the files to a partition), menu.lst will be configured differently
This is exactly what I needed. I wanted to dual boot my Win98 machine but keep using the ramdrive configuration. I put the four core Puppy files in a logical volume and got grub.exe from the Grub4DOS setup. I made a menu.lst file as described above and a small DOS menu in the autoexec.bat file. If I pick Puppy Linux, Grub launches it from the logical volume. Otherwise, Win98 starts as usual.
Now how would you do this on a WinXP machine? Would a line in boot.ini like c:\grub.exe="Puppy Linux" be enough?
Now how would you do this on a WinXP machine? Would a line in boot.ini like c:\grub.exe="Puppy Linux" be enough?
That makes sense. My original installation pre-dates 2.xx so I just changed what was there and as everything worked I quit while I was ahead.GuestToo wrote:i don't think Puppy 2.x uses the PHOME and PFILE variables ... my menu.lst file looks something like this:
title = Puppy 2.10
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd /initrd.gz
this is for a frugal install
if you want a "normal" option 2 install (copying all the files to a partition), menu.lst will be configured differently
I don't use Grub4dos and just have grub installed on what would be my "C:" drive in Windows. No problem loading XP-pro with the above menu.lst section.Now how would you do this on a WinXP machine? Would a line in boot.ini like c:\grub.exe="Puppy Linux" be enough?
i've never installed Puppy that way, but i think it should look something like this:
title = Puppy 2.10
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/hda1
to boot Puppy installed on hda1, with vmlinuz in / ... if vmlinuz is in /boot, it would be
kernel /boot/vmlinuz root=/dev/hda1
and you can add options like acpi=on noapic etc etc
i think this should try to boot a frugal install, but if it doesn't work (because there is no initrd.gz file) it will automatically try to boot the second way:
title = Puppy 2.10 option 1
fallback 1
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd /initrd.gz
title = Puppy 2.10 option 2
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/hda1
title = Puppy 2.10
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/hda1
to boot Puppy installed on hda1, with vmlinuz in / ... if vmlinuz is in /boot, it would be
kernel /boot/vmlinuz root=/dev/hda1
and you can add options like acpi=on noapic etc etc
i think this should try to boot a frugal install, but if it doesn't work (because there is no initrd.gz file) it will automatically try to boot the second way:
title = Puppy 2.10 option 1
fallback 1
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd /initrd.gz
title = Puppy 2.10 option 2
rootnoverify (hd0,0)
kernel /vmlinuz root=/dev/hda1