Linux on a Flash Drive

This article was published by ComputorEdge, issue #2711, , as a feature article, in both their PDF edition (on pages 9-12) and their website.

Linux, the most widely-used free and open-source operating system in the world, has been a favorite for running back-end servers, for many years now. This is understandable, given its many features: a rich toolset, legendary stability, Unix ancestry, and no licensing fees — to name just several. These have made Linux, in its various editions (known as "distributions" or "distros"), increasingly popular with corporations and other entities that do not have the time or patience to deal with the headaches of flaky and bloated operating systems.

The advantages that Linux brings to the server side have also won over countless consumers on the client side, where individuals usually do not need the networking capabilities of Linux, but still appreciate a stable and lower-cost operating system for their personal computers. At first, Linux on the client side was mostly running on desktop computers, and not laptops, partly because the latter category is rife with proprietary hardware components for which Linux device drivers had not yet been developed. But as laptop manufacturers saw the mounting enthusiasm and market penetration of the "little operating system that could", they made great strides in offering those needed drivers.

Linux is already lean — especially compared to Microsoft Windows — and is, in a sense, getting leaner all the time, as more distros are created that consume less disk space and system memory. These slimmed-down distros are ideal for running on older computers that may have last functioned using DOS, or even Windows 3.1, but could never support Windows 2000, XP, or especially Vista. Those lightweight distros are also the best choices for various handheld devices that do not have native operating systems built in.

Your Data in Your Pocket

On the one hand, we have an operating system that is shrinking in size. On the other hand, we have USB flash drives that are growing in capacity — having reached a phenomenal 64 gigabytes (GB) as of this writing. It was inevitable that a point would be reached at which Linux could be running on a simple flash drive — an enticing possibility unanticipated not that long ago.

There are a number of reasons why you would want to be able to run Linux on a flash drive. For instance, you may be scheduled for upcoming travel, during which you will not be able to bring a laptop, for whatever reason — or, a laptop might be allowed, but would be unwise, due to risk of theft, confiscation, or damage. Yet you still want to be able to use your familiar Linux environment, as well as your personal files and browser bookmarks, and your favorite applications and their settings, on whatever computer you have access to at your destination. In this case, a Linux distro on a large-capacity flash drive would be a terrific choice.

Admittedly, at the destination where you have access to someone else's computer — such as at a library or Internet café — you might be able to plug in a flash drive that only houses your data, without any operating system or installed applications, and use the operating system of the computer. But many of those public Internet providers do not allow you to connect removable media to their computers, and even if they did, their machines may not be running the most up-to-date security software, such as programs to detect viruses, spyware, and other malware. Bringing your own security measures with you, is the ultimate solution.

Linux in a Flash

USB flash drives containing an entire Linux installation, are not the first generation of a portable Linux. That distinction can be claimed by "live CDs", which is the nickname given to Linux distributions burned onto CD-Rs and CD-RWs. A pioneer in this realm is Knoppix. You could pop a Knoppix live CD into an Intel PC, boot off of the CD, and be running Linux, regardless of what operating system might be on the hard drive. This meant that you could try out a Linux distro without having to create a separate partition for it, install it on the hard drive, and deal with the complexity and potential problems of dual-booting a mixed operating system environment (unlike dual-booting multiple versions of Windows alone, which is more straightforward and less risky).

The next stage in the evolution of portable Linux, was the development of distros that could be run on a flash drive, which was made possible by the new ability of PCs — even palmtops — to boot off of USB devices. But those distros were not capable of storing changes to that drive (a problem seen earlier with live CDs, and only partly mitigated by writing user data to a diskette). This problem would have had less impact in our future, as more user data and applications move from the desktop to the Web. But at the time, most user data was stored locally. As a consequence, static Linux distros on flash drives were truly useful only to individuals who wanted to surf the Web using their customary environment, on someone else's machine, and possibly upload data already written to the flash drive — but not download any files to their flash drive, or make environment changes on the go.

That was the situation a few years ago. Nowadays, there are a number of Linux distributions that are specifically intended to run off of a USB flash drive, with the user able to make modifications to the environment and copy external data onto the drive, including files downloaded from the Internet. These newer distros are able to do this by implementing a memory overlay system that supports the saving of data on the same drive as the operating system itself. These distributions include Damn Small Linux, Fedora, Puppy Linux, Ubuntu, and Xubuntu. There are many more, but this is a good sampling. Also note that some of them may require the use of UNetbootin in order to create a portable Linux desktop.

Decisions, Decisions

Given that there are multiple Linux distros that could easily fit on your flash drive, which one should you choose? All of the aforesaid options differ from one another to varying extents, and thus offer their own advantages. Moreover, there are differences in their processes of installing on a flash drive; hence, I will not cover the details of that process for each one. However, I can consider some differences between two of the most popular candidates, which also happen to be two of the pioneers in the area of portable Linux.

Fedora home page
Figure 1. Fedora home page

Fedora, put out by Red Hat, is one of the more venerable and well-respected distributions in the marketplace. It has a reputation for being rather innovative and open to change, in terms of incorporating new capabilities and directions that are on the leading edge, and which usually become incorporated into most other distributions — many of which always seem to be playing catch-up. As for its graphical user interface (GUI), throughout much of its history, Fedora has utilized the Gnome desktop, at the expense of its primary alternative, KDE.

But the number one downside to being on the "bleeding edge" is… well, bleeding. Past versions of Fedora tended to be buggy and less stable versus some other distributions that added changes at a more measured pace, such as SUSE (now owned by Novell). Nonetheless, the latest version, Fedora 10, is the most stable yet, and a safe choice for trying out Linux on your flash drive, or any other platform, for that matter. To get more information on making Fedora bootable on a flash drive, see their "Making USB Media" instructions.

Ubuntu home page
Figure 2. Ubuntu home page

Ubuntu may lack the (checkered) history of Fedora, but it certainly makes up for it in popularity. The Ubuntu organization made a wise move when they announced to the world, a number of years ago, that anyone could order one or more copies of Ubuntu on CD, and the organization would provide those discs free of charge, even paying for the postage. This is a major factor in Ubuntu rising quickly to the top of the popularity chart, because if there is one thing that the Linux community is in favor of, it's the concept of "free".

Another influential factor is that Ubuntu gained a reputation as a well-designed distribution: complete, and yet easy to install and use; polished, and yet approachable, with a friendly user community; up-to-date with recent versions of applications, and yet quite stable. For more information on making Ubuntu bootable on a flash drive, see their "Install Ubuntu from a USB stick" instructions.

So the next time you want to take your data and favorite applications on the road, and you would rather leave the laptop at home (assuming you even have one), consider putting everything on a USB flash drive, with one of the Linux distros mentioned here, or perhaps another one you have discovered.

Copyright © 2009 Michael J. Ross. All rights reserved.
bad bots block