Puppy Linux/Installation
From Wikibooks, the open-content textbooks collection
Puppy runs live and installs to hard disk drives, USB storage devices, zip drives.
Contents |
[edit] Partitioning
First you need to partition your disk with GParted.
[edit] Installation
[edit] To HDD
From an ISO file
[edit] To CF
[edit] To USB flash drive
If you have a running Puppy installation, or don't mind burning a CD-ROM to make one, it's probably easiest to just use its installer app to create a bootable USB flash drive. But if you don't have a running Puppy, and you can't or don't want to go through the intermediate step of burning a CD, read on. It's super easy.
Rather than an in-depth howto with a million options, this is a record of "how it worked for me" with an occasional aside of "how it might be different for you". Do expand it with more data if you try something out and know if it works or doesn't.
I used Windows XP as the host OS during installation. A very similar process should work with Linux (I'll note the difference). I don't know about OS X.
I used a 2 GB flash disk with the FAT16 file system. It should work (not tested!) just as well with a FAT32-formatted one, but not all BIOSes are smart enough to boot from a FAT32 USB device. This exact process won't work for other filesystems (but if you're curious, read up on Extlinux). Almost all flash drives you can buy today come pre-formatted as FAT16 if they 2 gigs or less, or FAT32 if they're bigger than 2 gigs.
You'll need a program that can extract files out of ISO disk images. I recommend 7zip because it's free and easy and it handles a lot more other stuff besides ISO images. You can get 7zip at [1] or pick your own poison, for example at [2].
This process is dependent on Puppy live CD images using Isolinux for bootup. If they ever stop doing that, the process won't work anymore. (Though it will probably become just a matter of writing a small config file.) The version that worked for me was puppy-4.2.1-k2.6.25.16-seamonkey.
[edit] Make the USB flash drive bootable using Syslinux
[edit] If you're using Windows
Get the Syslinux in ZIP format (or any other format if you prefer) from [3]. The version that worked for me was 3.80, but you're probably best off just getting the latest one. If you open that link, you will normally see a list of files and directories. If, for example, the current version of Syslinux is 3.81, there will be a file called syslinux-3.81.zip. Clicking or right-clicking on the file's name should cause your browser to offer you options to download and save the file.
Syslinux doesn't "install", you just need to unpack the ZIP archive to a folder of its own. In modern Windows versions, you can normally do this by just double-clicking the file's icon where ever you saved it on your computer, selecting all the contents and "copying" them to a newly-created folder.
After that, make sure your USB drive is plugged in and accessible, open the command prompt and run:
(folder where you unpacked Syslinux)\win32\syslinux.exe -m -a (drive letter of the USB drive):
So if you extracted Syslinux to the folder c:\syslinux and your USB drive letter is E:, you would run c:\syslinux\win32\syslinux.exe -m -a E:
[edit] If you're using Linux
Also get and unpack Syslinux. As far as I can tell from the Syslinux manual you'd then need to run:
syslinux (your USB flash drive device)
So if your USB drive is /dev/sda4, you'd run syslinux /dev/sda4
I guess. Not tested. Try it out and update this page.
[edit] Download and extract the Puppy live cd image file
Get it from [4]. Use 7zip or whatever other program to extract all files from the image into a directory of their own.
[edit] Tweak and copy files
Among the files extracted from the ISO image, rename the file isolinux.cfg to syslinux.cfg. It's no surprise that Isolinux and Syslinux have almost the same config language. You can delete isolinux.bin, you won't need it. (Maybe some other files too - who knows?)
Modify the newly-renamed file syslinux.cfg in a text editor by changing the line append initrd=initrd.gz pmedia=cd so that instead of pmedia=cd it reads pmedia=usbflash. (If in some future installation the pmedia option is given in the kernel line instead of append, change it to usbflash there.)
Copy the files as they are now onto the USB drive. If you're doing it right, the drive's root directory should hold the files vmlinuz and pup_XYZ.sfs.
[edit] You're done
That's all. Set your BIOS to boot from USB and enjoy. You can delete the directories where you unpacked Syslinux and the image file on your hard disk if you want.