This is only a checklist for a full-install (option 2). See other sources for details.
For an explanation on partitioning see PartitioningForPuppy.
See also How to do a FULL install of Puppy, to an empty HDD.
For more on installing Puppy to your hard drive see Installing.
This is for users who want a Puppy full hard drive install and decide to wipe out the old Windows XP or any other operating system (OS). The steps in many sources are rather outdated, which can cause confusion. These are exact steps that worked in an install. These steps are very brief and are meant only as a Checklist. Credits to the sources, especially to HardDiskInstall.
Note: The partition you wish to install to needs to be formatted as a linux type (e.g. ext2, ext3, reiserfs, NOT fat32, vfat, ntfs).
0. Download and burn puppy 4.xx to CD (known as the live CD).
1. Place the live CD into target machine's cd-rom. Make sure that the cd-rom is bootable. Change the BIOS settings if necessary.
2. At prompt "boot: " just press Enter.
3. Wait for everything to load up. When it asks for the video mode, choose either. Then choose the language and timezone. (It doesn't really matter.)
4. After less than a minute, the Puppy GUI appears. If using XVESA, select the proper resolution if you want. At this point it doesn't matter either way because it can be changed later.
5. Click Start > Utilities > Pdisk.
6. Click "hda" (assuming that's the harddisk you're installing to).
7. Click cfdisk. Note: Partitioning removes all data!
8. Delete all the partitions you can see. Use simple cursor keys (arrow buttons) to move through the menu.
9. After deleting all the partitions, select "Write partitions".
10. Select "quit".
11. Click Start > Utilities > Gparted.
12. You should see the harddisk as all one single unallocated partition now. Click on the partition.
13. Click the New button. Enter the size of the partition ("hda1") you want to use, leaving some space for the Linux swap file. Right click on hda1, go to flags, then check boot.
14. Click on unallocated space again and followed by New. Set the size of your swap partition. The file system MUST BE linux-swap. This is often recomended as twice your RAM quantity, however, the size depends on your computer and how you use it. For details see other resources.
15. Click Apply. If you can't see it (which can happen due to the large icons), go through the menu on top and find Apply.
16. Follow instructions to start the partitioning.
17. IMPORTANT STEP! REBOOT! Many online sources never state this step which can then cause failed installations. Select DON'T save changes when asked.
18. After reboot, you should come back to the boot prompt again. Press Enter, and repeat steps 3 and 4. DON'T REMOVE CD.
19a. Format the swap partition as file system Linux swap, type 82. See other sources for details.
19b. Click Start > System > Puppy Universal Installer.
* Steps 20 to 24 may be not be in the proper order. The general guide is just to follow the installation program. Go to the credit link for more information: HardDiskInstall.
20. Choose the NORMAL install (i.e. option-2 as said in other sources).
21. Click Install > OK.
22. After some time, the GRUB installation menu will appear. Select "simple" and wait for GRUB to say 'installation successful'. Make sure to select "MBR" when there's the choice.
23. The cd-rom should have popped open by now. Remove CD now. REBOOT!
24. Grub should come up. Select Install GRUB to Linux Partition. Things should all work fine up to now.
25. Select first option, that is, boot into Linux. Note: If you receive an error starting wrong VGA resolution like, ignore it and just press Space.
The following steps are optional. They will make your computer skip the GRUB menu and boot directly into Puppy. Do this if Puppy is your only OS and you don't want to bother with the GRUB booting menu.
26. Click Home on the desktop. Click parent directory > boot > grub > menu.lst. Click on the eye icon to view hidden files if necessary.
27. Open the menu.lst file.
28. Remove # from the timeout line. Set time limit to whatever you want. I set mine to 0 (zero), so it boots immediately into puppy without pause.
29. Make sure this line "kernel /boot/vmlinuz root=/dev/hda2 ro vga=normal" has "vga=normal". If it's vga=790, it causes the error in step 25.
30. Save and exit. Now REBOOT and test out your installation. It should work just fine!
Note: The swap partition must be visible and NOT hidden.
Many users who discover Puppy eventually want to install it to their hard drives instead of using the Live CD. This will often involve dual-booting the computer along with Windows. Puppy has an installer program located in its Setup menu but the various options can be confusing. This article discusses the decisions you need to make before attempting the installation. If you plan to scrap Windows entirely and set up a dedicated Puppy machine, you will also find useful information here.
Open the Live CD and look at the contents. You will see that the complete operating system is contained in just three compressed files. They are vmlinuz, initrd.gz and pupxxx.sfs. (Older versions of Puppy also used a file named zdrvxxx.sfs.) The first two files contain the code that Puppy uses to get itself started. The third file contains the application software like word processors and web browsers.
What kind of installation method will you choose? There are two choices. A traditional full install extracts all the individual files from the three core files on the CD and copies them to your hard drive. You end up with many files and folders, like you have in a Windows setup.
A frugal install just copies the three files from the CD to your hard drive as they are. Each method has its own advantages, which we won't discuss now. For beginners, a frugal install is easiest - simply because it duplicates the way that the Live CD works. (A more detailed comparison of full versus frugal is provided at the end of this document.)
The exception to the above rule is an old computer with limited memory (64 MB or less). It will work better with a full install. On the other hand, you may be disappointed with Puppy's performance on such a low-end machine.
Where will you install the files on your computer? A hard drive can be split into several independent regions called partitions. Clearly, the safest place to install Puppy is in its own partition where it can never touch your Windows setup. However, this involves shrinking your Windows partition to provide the necessary space. Most newcomers are nervous about doing this.
Tools like the Parted Magic Live CD can reliably repartition your hard drive. Or you can use the Gparted program on the Puppy Live CD. But there are risks, especially if your Windows installation has some underlying corruption. Because there is a learning curve to using a partitioning program, you might not want to practice on your best Windows machine. Also, see the notes at the end.
You can use a separate partition to hold either a full or frugal install. A few GB of space will be plenty for a frugal setup. You must also decide how to format it. For a frugal install, the ext2 filesystem will be fine.
Unless your machine has lots of memory (512 MB or more), you should also consider making a swap partition. A good rule of thumb would be to add enough swap to bring your total memory up to 512 MB. You can use the Linux "free" command to check how much memory you have in play.
If you are not comfortable repartitioning your hard drive, Puppy has an alternative. Stay with one partition, do a frugal install and put the Puppy files inside Windows. For example, the first core file would then become c:\vmlinuz. This is known as a "coexist" install.
In the old days of Windows 98 and FAT32, a coexist setup was the easiest method for beginners. However, since NTFS has become the standard filesystem format for Windows, this may no longer be true. There are some reports that if Puppy crashes, it can also damage Windows. But many users are running Puppy this way without incident. So you need to choose between two small risks - corrupting Windows during a drive repartition or corrupting it as a side effect of Puppy failing.
How do you want your computer to boot? When your machine powers up, it needs to select one of its partitions from which to load an operating system. This requires a bit of code called a bootloader, located at the root of your hard drive in the Master Boot Record.
All hard drives that have Windows installed contain a standard block of code in their MBR. If this code gets altered, Windows may refuse to boot even though its actual files are OK. This can be a frightening situation, but is easy to repair. Do some research on the WinXP Recovery Console and its "fixmbr" command. Also look here for the "fixmbr" download. Vista users should read here.
This is a crucial issue because Puppy uses its own bootloader, GRUB. You have to pick one or the other as the primary bootloader for your computer.
Now for the decision. Do you want to continue using Windows as the primary bootloader? If so, you will need to modify Windows so it presents a startup menu that includes Puppy as one of the options. The Puppy Universal Installer (PUI) cannot set this up because you need to make the changes from inside Windows. There is an on-line tutorial called the Lin'N'Win Project that will do the job. Find it here.
Or do you want Puppy to be the primary bootloader? This will involve installing GRUB, which Puppy can do automatically. Windows will now run as an option from the GRUB boot menu. However, because GRUB is a Linux product, this will only work if you have installed Puppy into its own partition. And the partition must be formatted using a Linux-compatible filesystem such as ext2.
The PUI will refuse to install GRUB in a FAT or NTFS partition, because it assumes that the partition contains Windows. Watch for the cryptic error message "This partition is not Linux".
Now we get to the MBR issue. The quickest out-of-the-box solution is to install GRUB on the MBR of your hard drive. The PUI will warn you about the dangers. But this is only an issue if you want to return your machine to a Windows-only setup in the future. In which case, you would simply run the "fixmbr" procedure.
In a multi-partition setup, you should NEVER have to reinstall Windows just because there was a problem with Puppy. Unless you did something really stupid.
At this point, a short GRUB tutorial might be helpful. GRUB has two parts - stage1 and stage2. Stage1 is the small block of boot code that gets written onto the MBR. Stage2 is the collection of support files that are stored in the folder /boot/grub on the Linux partition. That is also where the GRUB menu file, menu.lst, is located.
This should explain what can go wrong with a dual-boot system. Suppose that your Linux install gets damaged or you decide to delete it completely. If your /boot/grub folder has disappeared, the stage1 code in the MBR won't be able to find its stage2 files. Your computer will refuse to boot, even to Windows. But now you know how to fix this by restoring the MBR.
If you are still nervous about changing your MBR, you can modify the Lin'n'Win technique to boot Puppy off a different partition. Or you can have the PUI write GRUB's stage1 to a floppy boot disk. Or you can do the frugal install manually and use a boot CD to launch it. In that case, you could even put Puppy in a logical FAT partition which would be sharable with Windows. Or you could avoid the entire issue by installing Puppy onto a USB flash drive.
When you do a full install, all of the data in the core Puppy files is extracted from the CD into a filesystem on your hard drive. Any software you install or files you save are added to the filesystem, so the total number of files and folders gradually increases.
In a frugal install, Puppy creates another file named pup_save.2fs. When you boot up, the filesystem stored in the core Puppy files is loaded into memory, but remains read-only. The pupsave file is used to hold all the new stuff you add. These two are merged together so it appears that you are working with a single filesystem. You get the effect of a full install while Puppy is running, but all you actually see on your hard drive are the core files and the pupsave.
The main advantage of a frugal install is that you always boot with pristine copies of the core Puppy files. If your install gets corrupted, it's just a matter of restoring the single pupsave file from a backup copy.
But what if your pupsave file gets filled up? Puppy has a utility for increasing its size. Or you can store content on your hard drive outside of the savefile, like you would with a full install.
Another advantage is the ability to put a frugal install almost anywhere. You can even stick it inside a full install of Puppy or another Linux. Or you can have multiple frugal installs in the same partition.
Whether you use full or frugal, Puppy's GRUB install procedure can be a bit confusing. However it's easy to install GRUB manually. Read here and get the "grub-install" package.
There are certain advantages to using a stand alone product like the Parted Magic CD to reformat a drive. For example, it will contain the latest NTFS drivers if you need to shrink Windows. However this tool, or the partitioning programs in some other Linux's, can have a major side effect on Puppy. Read this thread regarding inode sizes in ext partitions.
There have been reports that Vista can be corrupted if a user tries to shrink the Windows partition using Linux tools. A safer procedure is to use Vista's own Disk Management tool, then create the new partitions using Linux. If you want to keep Vista as the primary bootloader, look at Easy BCD here.
Source: Beginners Help - Puppy Linux Discussion Forum