The first thing you need to do when you start considering small Linux distributions is decide what your priorities are - what do you need it for and what are you planning to do with it? There are a number of different small/mini/tiny/whatever distributions available, and each has its own special strengths. I have been looking at three of them:
There are certainly a number of other "small" or "frugal" Linux distributions available, but I believe that these are probably the best known, and are representative of what is available.
I have been trying these on three systems: my two trusted Fujitsu laptops, S6510 and S2110, and a rather old Dell Dimension desktop. What follows are my notes from those tests, and my own subjective impressions and opinions of these distributions.
First, what differentiates these distributions - what does each one consider to be its "strength"?
Damn Small Linux is just what the name implies. Small. Really Small. In fact, Damn Small! It actually started out as an experiment to see how many desktop applications could fit on a single 50 MB "Business Card CD". That size limit has remained one of the basic criteria, so even the latest release, 4.4.10, is still only 50MB.
Puppy Linux is a somewhat larger distribution, but still quite small - less than 100 MB for the current release, 4.1.2. It includes a lot more functionality and variety than DSL (duh, it's twice as big), but they still make sure that it boots and runs very fast, including having it load and run from RAM by default.
TinyMe Linux is the largest of the three, by far, at 200 MB. It just fits onto an 8cm "Pocket CD-R", which was my test media for all three. It is derived from PCLinuxOS (and thus from Mandriva), and it shows, you can see bits and pieces of the parents scattered throughout. But it's much smaller, even compared to the "MiniMe" PCLinuxOS distribution.
Although all three of these small distributions concentrate on minimizing the CPU, memory and disk requirements, you will be surprised at what they include. Excellent hardware support, including displays, keyboards, mice, USB, FireWire, disk drives, networks both wired and wireless, and much more. Applications and utilities, including web browsers, email clients, simple text editors, Office applications such as word processors, spreadsheets and PDF viewers, media players and much more.
Ok, enough of the "overview" stuff. If you are still with me, and are determined to read on, here are the gory details!
The first time I tried DSL, I didn't care much for it. But once I got over a couple of problems, the more I tried it, the more I found that I liked it. It really is very, very good at what it sets out to do, and they have done an excellent job of staying focused on that while continuing development. Here are the high points from my notes:
- Failed to boot properly the first time on the S2110, because of the ATI display adapter. However, when I looked at the boot options, by pressing F2 and F3 at the boot prompt, I found that I could add fb1024x768 to the boot options, and get framebuffer video support, which worked just fine.
- There is no Swiss German in the keyboard selection list, but there is Swiss French, which is close enough...
- While perusing the boot options, I noticed "toram", which loads and runs everything from a ramdisk. This is MUCH nicer than the default, running from the CD, which is very slow due to the amount of thrashing around on the CD it does.
- DSL uses the older 2.4.x Linux kernel, rather than the current 2.6.x version. The reasons for this are explained in their FAQ
- This was the only one of the three which came up with the wired ethernet running.
- Even though it is the smallest of the three distributions, it was still well equipped. Several text editors, image viewers, some basic office apps such as Ted Word Processing, Siag Spreadsheet and a PDF document viewer, audio media player, all sorts of Internet apps such as web browsers, email clients, FTP, Telnet, Remote Desktop, and a variety of games. Whew.
- DSL recognized and would mount all of the partitions on my hard disk, including the Windows NTFS partitions, as well as the USB thumb drive (FAT) that I often use.
As I said, I ended up really liking, and respecting, DSL for what it is and what it can do. Because of their choice to stay with the 2.4.x kernel, and keep everything else to a minimum, it will certainly run the best of these three distributions on older CPUs and systems with very small amount of memory.
This was really my favorite, right from the start. It seems to me that it strikes a good balance between size and functionality.
- It came up on all three systems without a lot of fuss or fiddling. Rather than me having to figure out the boot options to get the windowing system working, it asked me some simple questions about the keyboard, display and mouse. Unfortunately, there was no Swiss keyboard at all in the selection list. Grrr.
- It loads into RAM by default, which causes it to take a little longer to boot, but once it is running it is incredibly fast.
- The network is not configured after boot, but there is a very simple "connect" icon on the desktop that does the job on the wired ethernet just fine.
- It recognized and would mount all of the hard drive and USB disk partitions.
- It includes an even better selection of programs than DSL (as you would expect from the larger size): abiword for word processing, which was able to open both MS Office .doc files and OpenOffice .odt files, Gnumeric spreadsheet, which was able to open .xls and .ods spreadsheets, ePDFView and even a PDF file conversion utility, lots of Gnome desktop utilities, image paint, draw and view programs, organizer/planner, media player, and much, much more.
As I said, I think Puppy Linux strikes a very good balance between small size and excellent functionality. I can easily imagine keeping the Puppy LiveCD in my back pack, so that I can boot it up when I need to work on someone else's computer, and because it recognizes the USB thumb drive, I can still read and write my own documents, and copy things that I need to take back and look at later. In fact, the best solution of all might be to make a bootable USB thumb drive with Puppy on it, and just work from that when I can - but I will still have to keep the LiveCD with me, because there are a lot of systems around that can't boot from a USB drive.
This was the largest, and the most "full-blown Linux" feeling of the group. It seemed to me that while DSL and Puppy were built from the perspective of making a really, really small Linux with good functionality, TinyMe tries to see how much it can strip down a "standard" distribution (PCLinuxOS). The result is a small distribution that looks and feels very familiar, but won't fit or run in some of the places that the other two will.
- TinyMe did the best job of starting up the desktop with a minimum of fuss. It didn't complain or get confused by the ATI display adapter, and it was the only one of the three which actually had a Swiss German keyboard option.
- I didn't see any option to load and run from memory, so it was constantly thrashing about on the CD drive, and so was correspondingly slow when run from there. I have the feeling that TinyMe is much more intended to be installed as a small system on a hard drive than to be run from a LiveCD.
- Once again, the network wasn't configured on boot, but there was a simple and obvious procedure to do the job.
- There were a few surprises in the applications and utilities. The general selection was about the same as Puppy had, but there is no spreadsheet program and no PDF converter, and nowhere near as many games. Graphics, paint, drawn and image viewers, and media players, are perhaps a bit better. Opera is the default browser, which pleases me personally.
- Synaptic Package Manager is included, which makes it easy to add packages from the TinyMe, PCLinuxOS or Mandriva repositories.
TinyMe really shows its heritage when you try to shut down the LiveCD - because it doesn't do it. Like PCLinuxOS, and Mandriva, it shuts most of the way down... and then hangs, so you have to reset or power cycle. Just goes to show, the acorn doesn't fall far from the tree...