Short on horsepower? Less is more when it's powered by Linux.
Linux is an amazingly scalable OS — that is, it can be used on anything from tiny embedded devices to large supercomputer clusters. This scalability is important for Linux as a whole, but it might not seem critical to the average office or home user who runs Linux on a PC, at least not at first. Upon closer examination, though, Linux’s scalability can be a useful boon to PC users. Do you have old computers gathering dust in a corner? Is your desktop system still functional but a bit sluggish because it’s a couple of years old? Did you buy a low-end bargain PC and now regret it because it’s too slow? If you’ve answered “yes” to any of these questions, Linux’s scalability may be the answer to your problems (well, some of them, anyway).
The key to using Linux on underpowered computers is to learn how to divest a standard Linux installation of the unnecessary cruft that tends to attach itself to mainstream distributions. There are a couple of ways of doing this: You can start with a less feature-laden distribution or strip down a larger one. In some cases, you might consider using Linux as a dedicated thin client. However you do it, you can have a fully functional Linux desktop or server on a very modest computer indeed, simply by choosing your software carefully.
Of course, there are limits to this — you won’t be able to get high-definition video playback or host a massively popular Web site on an old 486. You should, though, be able to use a somewhat elderly computer for some of the most common desktop functions such as browsing, word processing and e-mail. And you may even want to run low-bandwidth network servers.
Choosing a Lightweight Distribution
One of the best ways to get the most out of a less-than-powerful computer is to use a lightweight distribution. Although Red Hat, Fedora, Ubuntu, Mandriva, SuSE, and many other distributions are powerful and easy to install, these distributions also tend to install lots of software that you don’t really need, but may impose hefty requirements on a small computer.
Two relatively mainstream distributions spring to mind as candidates for small-system use: Debian and Slackware. Both distributions make it easy to install a bare-bones Linux system, without all the flashy extras that more popular distributions install.
Debian has a couple of advantages over Slackware:
- Debian uses the Debian package system, which is popular and enables network-based software updates. Slackware, by contrast, uses modified tarballs, which aren’t used by any other major distribution.
- Debian is available on ten architectures, including some that may be of interest to small-system users, such as PowerPC. Slackware is available only on x86 CPUs, although at least one spin-off project (Slamd64) exists to provide Slackware on the AMD64 architecture.
Both Debian and Slackware are well-established Linux distributions with long histories. Debian is the basis of Ubuntu, and Slackware is among the oldest surviving Linux distributions. Both are being actively maintained.
One drawback to both of these distributions is that they provide relatively little in the way of hand-holding GUI installation and system administration tools. Thus, you must be prepared to use text-mode tools, at least initially. If you really must have GUI system administration tools, you can install them after setting up the system. One useful option in this respect is Webmin, which provides Web-based administrative tools for a wide variety of Linux distributions, including Debian and Slackware. You can even remotely administer your Linux system using Webmin, although doing so increases your security risks.
I installed Debian 4.0-r3 on a system with a 1.2GHz AMD Duron CPU. Installing the “Standard system” and “desktop environment” package sets consumed 2.3 GB of disk space. If 2.3 GB is more space than you’ve got, try installing just the “Standard system” and then add software to that. Another of my systems is a ten-year-old notebook computer with a 470MHz AMD K6 CPU. It has a Slackware 12.0 installation (the current version is 12.1), which consumes 2.7 GB of disk space; however, I’ve added a number of packages to the Slackware system, so it could install on a smaller hard disk, in a pinch. Even these systems could be further slimmed by judicious use of a package manager, as described shortly.
Of course, your choices for running Linux on limited hardware aren’t restricted to Debian and Slackware. A Web search will turn up plenty of others, such as Arch Linux, CRUX, Damn Small Linux, and Vector Linux. You might want to visit the Web sites for these distributions and perhaps even use one of them. However, sticking with Debian or Slackware gives you the advantage of keeping you fairly close to the mainstream, and thus improving your chances of finding help should you need it.
Stripping Down a Heavyweight Distribution
A second option for running a slim Linux system is to install one of the big distributions, such as Fedora or Ubuntu, but trim the system after you’ve installed it. Unfortunately, this task can be a tricky one, particularly if you’re relatively new to Linux. If your disk space is limited, you may also be faced with the challenge of installing your chosen distribution to begin with — in some cases, you may not be able to fit even the base installation on your hard disk!
Assuming you can install a base system, though, how can you then strip it down? The best tools for the job are GUI package management programs. If you’re using Debian or a Debian-based distribution, Synaptic is the standard utility for the job. In Fedora, Yumex is a good choice.
For Ubuntu or other Debian-based distributions, try typing
synaptic at a command prompt in X (you may need to be
root, or use
sudo, as in
sudo synaptic). If you get a
command not found error, type
apt-get install synaptic or
sudo apt-get install synaptic to install the package. You may also be able to launch it from a desktop environment’s menu system.
You can use Synaptic to peruse the installed packages using the upper-right pane of the window. Installed packages have highlighted boxes in the column marked S. If you spot a package you don’t need, right-click it and select Mark for Removal or Mark for Complete Removal from the pop-up menu. Once you’ve marked as many packages as you like, click the Apply button to remove the packages you’ve selected.
Yumex on Fedora fills a similar role to Synaptic, but operational details differ. To launch Yumex, type
yumex at a command prompt or locate it in a desktop environment’s menus. If Yumex isn’t installed on your system, try typing
yum install yumex to install it. Once Yumex is running, select the Installed radio button above the package list. You can unselect the packages you want to remove using the top right pane. Once you’ve done this, click the Add & Process button. Yumex will ask for confirmation, then remove the packages.
One problem with stripping down a big distribution is that you may not know what packages are safe to remove. The descriptions shown by Synaptic and Yumex can help you make this determination, but sometimes these descriptions will leave you scratching your head. Package managers will often warn you of serious problems, either by refusing to let you remove a truly vital package or by informing you that a large number of other packages depend on one you’ve selected for removal. You can then cancel the uninstallation. I recommend proceeding with caution when removing packages lest you create problems. Unless your disk space is very tight, leaving unnecessary packages installed won’t cause really serious problems.