[Linux Inside]

Linux Inside: The 'little' Linuxes

by Gene Wilburn

(The Computer Paper, March 2000. Copyright © Wilburn Communications Ltd. All rights reserved)

A typical Linux installation these days can easily consume over 1Gb of space if you take all the options. When you load up extra language tools, office suites, graphics programs and trial software, you need a sizeable disk partition to hold it all.

On the other hand, Linux can also be small. When you're installing Linux on old equipment such as a 386, 486 or early-model Pentium, you can pare down most distributions to fit on drives of 100Mb or less by excluding the extras and such niceties as X Window. Just a couple of years ago this was more commonplace than it is today, before large drives became really cheap, but it's useful to know that you can still install most mainline Linux distributions on older PCs.

But did you know that there are distributions of Linux that have been shrunk to fit on a single floppy diskette? It's a scaled-down Linux, to be sure, but it's Linux all the same. There are also distributions of Linux that were designed specifically for PCs with modest hard disk specs. There are even specialized distributions that you can load into a Windows partition, eliminating the need to repartition a PC in order to try out Linux. This month we'll look at some of these interesting small-Linux and Windows-Linux variants.

Linux on a diskette

One of the essential tools I carry around with me is tomsrtbt, Tom's Root Boot, a miniature Linux on a diskette. It's a 1.7Mb floppy that boots on 1.4Mb floppy drives.

An amazing feat of compression and miniaturization, tomsrtbt contains over 100 programs, in addition to a 2.0.37 Linux kernel and even some rudimentary man pages. It offers such useful tools as fdisk, fsck, mount, ls, chmod, cp, dd, vi, insmod, and even awk and sed. It also contains drivers for several network cards and SCSI devices.

It can be used as a rescue and repair disk or as a learning aid for Linux itself. You can study command-line Unix programs on any PC without installing Linux on its hard disk just by booting the floppy. The tomsrtbt website (www.toms.net/rb/) supplies add-on's that can be used to create a custom version of the diskette. You can create a tomsrtbt diskette from either Linux or Windows.

While tomsrtbt is set up for general use, other diskette-based Linux distributions have taken specialty directions. A case in point is a Linux-on-a-diskette distribution called the Linux Router Project (www.linuxrouter.org). LRP is a network-centric distribution used for setting up network routers, thin servers, and network appliances. A router can be created with a 386, two network cards, and a floppy disk drive.

Because Linux-on-a-diskette distributions create their filesystems in RAMDISK memory, they have a security advantage over a standard installation. The floppy can be write protected, or removed completely after booting, preventing any unauthorized changes. One distribution that capitalizes on this is Trinux (www.trinux.org). Called a "Linux Security Toolkit," it is designed to turn 386 or higher PC's into security workstations.

Because tomsrtbt allows you to mount hard disk partitions (including Windows partitions), it can be a hazard for classroom use. Enter Floppix (floppix.ccai.com), a two-diskette Linux created from Debian GNU/Linux parts. Floppix, which was created as a safe teaching distribution, has hard drive support disabled. It can be used to teach introductory Unix in classroom computer-lab environments where another operating system is already installed on the PCs.

For even more Linux-on-a-diskette distributions follow the links on tomsrtbt site.

Embedded Linux: the smallest Linux

Floppy-based Linux distributions are close cousins to a major new development in Linux: embedded Linux. While Linux advocates discuss the potential for Linux as a desktop OS, competing with MacOS and Microsoft Windows, embedded Linux may quietly, and largely unseen, become the most widely adopted form of the Linux OS. In a nutshell, embedded Linux is Linux in a nutshell--that is, it is a micro version of the operating system embedded into electronic devices. The controlling OS is invisible in these products.

There is already a commercial MP3 player for the automobile that is based on embedded Linux. Empeg-Car (www.empeg.com) can hold up to 7000 song tracks in digital format (over 500 albums). Several commercial and open-source ventures are vying for ascendency in this burgeoning market, including the Canadian-based open-source Linux/Microcontroller Project (www.uclinux.org) and the Caldera-related Lineo embedded Linux system (www.lineo.com).

The embedded operating system market will be one of the hottest areas of computing in the first decade of the 2000's. By all signs, Linux will be a major player.

Small Linux Distributions

For most of us, though, Linux means something we install on a PC. Sometimes the PC we have available for Linux has minimal resources, but we want something more than just a floppy-boot version of the OS.

Curiously, for every direction the industry takes, there always seems to be a counter direction. Just as the mainline Linux distributions are filling up hard disks with more and more goodies, some specialty distributions are headed the other way, towards small, lean installations. Some of these are designed to be installed in a Windows partition and booted into from DOS, thus eliminating the partitioning problem for those who would like to try out Linux without altering their hard disks.

One small distribution aimed at older PC's is called Tiny Linux (tiny.seul.org). It is a small but fairly complete basic Linux installation that can be installed from 12 floppy diskettes. You download the diskette images, move them to floppies using either Linux dd or DOS rawrite, then install them onto the target computer.

Both Debian and Slackware offer floppy-based installation for a minimal setup. With Debian, you can download floppy images to fit onto 10 diskettes and install with these. If you then have access to the Internet, either via modem or a direct network connection, you can subsequently use Debian's dselect program to layer up the installation to include additional tools and applications. In other words, you can stay at an absolutely basic level with it, or scale it up as far as your HD capacity will allow.

Slackware, too, has a floppy-based option. It allows you to install the "A" package (minimal essentials) from floppies. Then, as with Debian, you can get the other packages from non-floppy resources. The instructions for installing Slackware this way are on CD1 of the CD-ROM set.

If you can do non-floppy installations to your target PC (CD-ROM, direct Internet connect, etc.), you may find your biggest bang for the buck is a small but modern distribution called Peanut Linux (metalab.unc.edu/peanut/). This distribution is a 48Mb download that expands to about 140Mb when installed. Peanut Linux is loaded with X Window, KDE and the 2.2.14 Linux kernel. Installation instructions are located on the website.

Linux in Windows

There are ways of installing Linux directly into a Windows FAT16/FAT32 filesystem rather than into a separate Linux partition. Although there is a performance penalty for running Linux this way, it can be convenient for anyone who wants to install Linux into a Windows computer without repartitioning the drives. With today's fast processors and hard disks, the performance is acceptable for many tasks.

Slackware includes an installation called ZipSlack that can be installed into Windows using WinZip or another Zip utility. It installs into less that 100Mb space and can be used for accessing the Net and programming in C. It is also trim enough to fit on an Iomega Zip disk, providing a small bootable Linux that is also portable. ZipSlack is located on CD4 of the Slackware CD distribution or it can be downloaded from the Slackware site (www.slackware.com).

ZipSlack was created in an earlier era when a stripped-down, command-line Linux was good enough for many users. Today's expectations are often higher, so Slackware has created a newer version of ZipSlack called BigSlack (CD3 of the CD set).

BigSlack is similar to ZipSlack but it's much, well, bigger. It installs into approximately 800Mb of space in a Windows partition and includes a full Slackware installation, including X Window and KDE. As mentioned, performance is not as good as a native installation of Linux, but it is acceptable on fast computers.

Slackware has also provided a set of instructions for moving a BigSlack setup into a native Linux partition should you try it out, decide you like it, then want to preserve your existing BigSlack setup when you create Linux partitions.

In addition to Slackware, there is a Linux CD distribution aimed exclusively at running in a Windows partition. Called Phat Linux (www.phatlinux.com), it has features similar to BigSlack. Other Linux-in-Windows distributions include WinLinux 2000 (www.winlinux.net), which requires approximately 500Mb, and the diminutive DragonLinux (www.c-cubedinc.com/dragon/index.shtml), which only requires 150Mb including X Window and KDE.

Finally, for those who want to test the Linux waters without actually installing a distribution, both Slackware and SuSE Linux include a "live" Linux filesystem CD that can boot directly from your CD-ROM drive. This CD Linux is read-only, performance is terrible, and it can't be used for any serious work, but it allows you to look at Linux and test drive it without making a commitment.

If nothing else, these distributions demonstrate the architectural versatility of Linux. From embedded systems to supercomputers, Linux can find a home at any point in the computing spectrum.

Gene Wilburn (gene@wilburn.ca) is a Toronto-based IT manager, musician and writer who operates a small farm of Linux servers.