Wednesday, October 24, 2007

OS on a Stick: Puppy 3.01 on a USB Drive

Puppy 3.01 is out and it is quite wonderful. It works better out of the box than any of the other versions and has some really great features, one of which is a compatibility with Slackware, which I will discuss more later.

I wrote previously about using Puppy in a virtual machine, mainly as an ssh server. The very first thing that attracted me to this unique and powerful Linux operating system, however, was it's ability to function off a USB drive, or Flash drive.




A Full Operating System That Fits in Your Hand!!


I would suggest using a virtual machine with a program like VirtualBox first, but once you begin to feel comfortable with it you should definitely try using it off a USB for a totally portable Operating System.

First, download the ISO from here. Virtual machines require the retro version, however the 'normal' version (look for puppy-3.01-seamonkey.iso) works just fine from a USB or LiveCD. Burn it to CD using a program like BurnCDCC, which is recommended on the Puppy download page. You can actually run the OS from this LiveCD, but I have found that it is much more portable off a USB drive. Start up the LiveCD by making sure your BIOS is set to boot from the CDRom. Choose your country's default keyboard and then go ahead and choose XVESA first and then your screen resolution. Once you are 'in' puppy, insert the USB you want to use. Then go to the Menu button in the bottom left (although this menu list can be accessed from anywhere on the desktop with a right click of the mouse) and choose Setup then puppy universal installer:



The first choice is for a Flash Drive, so click OK. Next you should see your usb device name, click ok. Now choose the top right install choice.



Make sure the info in the next box matches the size of your USB device (in MB) then click ok. At this point I usually choose mbr.bin. Like the author of the heading, it has worked consistently for me.



Next just hit OK and then Enter and the process begins!! Once everything is done the CD will usually eject and you will be running from the USB.

Now, the next stage is probably the most important. Go ahead and poweroff (Menu>Shutdown>Poweroff). You will be asked if you want to save a file. Choose yes and then the defaults until you get to the size. At this point consider this:

Puppy's 'C:' drive equivalent, just for illustration's sake because there really is no similiarity, is this pupsave file that you are creating. All the programs that you install and documents that you save within the puppy file system will exist within this directory. However, the actual size of these programs is surprisingly small, and most importantly, the size of the directory can always be expanded, but never reduced. Therefore, I always choose an option that represents about 25% of the drive, ie I use a 2 gig drive so I chose the 512mb option. You will find this to be more than enough. The number of M you see in the bottom right of your screen will represent how much of this memory you have left (until you create a pupsave file it represents the remainder of RAM).

The reason for not taking up your whole drive is the use of SFS files. These are packages that are placed in the 'home' directory - /mnt/home - out of which puppy operates and allow multiple packages to be installed, such as the openoffice.sfs file seen here. The size of the /mnt/home directory is the remainder of the usb drive from whatever you chose as the size for your pupsave file. There is a readme.txt file in the directory linked to above which explains how to use the SFS files. If you have any problems let me know.

Next blog I'm going to go through my favorite programs and tweaks for this Puppy.

Oh yeah - Puppy is very easy to back up! Just copy the pupsave file to another directory on your desktop/laptop - it contains all your settings and installed programs!!

TRY IT! YOU'LL LIKE IT!!

1 comment:

Jeff said...

It's worth noting that Puppy seems to require a place to write files (NOT in RAMdrive). I tried it on a laptop with a dead hard drive, and it wouldn't work. That was a live CD.

Then I tried again, but with a USB jump drive. Works great! Because the jump drive is writable Puppy can save its configuration. The live CD uses the hard drive to do this. No hard drive--no live CD.

I've known people who use Puppy as a primary OS. It can do everything that most people need a PC for. Why do we demand so much bloat anyway?

BTW: I have a question for you. Can VirtualBox be installed on Puppy Linux? If so, it would be a (possible) way to run Windows on a jump drive?