Micro Distros: The Tiniest Linux You Can Get

Micro Distros: The Tiniest Linux You Can Get

Article from Issue 203/2017
Author(s):

Most desktop distros are full of features – but they're pretty bloated, too. Discover super-slim Linux versions that can run on (almost) anything.

Regular listeners to the Linux Voice podcast  [1] know that we like to reminisce about the glory days of the Commodore Amiga. A lot of this is simply nostalgia and wistfully looking back on the past with rose-tinted glasses; after all, AmigaOS didn't even have memory protection, so it was very easy for one misbehaving program to take down the whole system, leading to the infamous Guru Meditation error messages.

Nonetheless, AmigaOS was incredibly impressive at the time: You had a full graphical user interface (GUI) and multitasking operating system, supplied with various utilities, libraries, fonts, and other bits and pieces – all in a couple of megabytes. Compare that to today's desktop Linux distros, which eat up several gigabytes in a standard installation. Sure, openSUSE, Fedora, X/K/Ubuntu, and the like do so much out of the box, so it's not a really fair comparison, but sometimes you do wonder what's munching up all the hard drive space.

Thanks to their open source and free software underpinnings, desktop Linux distributions aren't inevitably chunky beasts. Many super-lightweight distros squeeze an enormous amount of functionality into a relatively tiny ISO image. These distros are ideal if you want to install Linux on older or low-spec hardware, or just set up a Linux installation where you control every single piece of software on the system. In this article, I'll look at some of these distros, show you what's cool about them, and give you some tips for using them.

Tiny Core Linux

Tiny Core is one of the best known micro distros, having been in development for the best part of a decade. Slightly confusingly, there are two versions of the distro: Core, which weighs in at 11MB and provides only a command-line interface, and the slightly larger Tiny Core, which is 16MB and includes the X Window System and the Fast Light Window Manager (FLWM). The former can be run on an ancient 486 PC with a mere 28MB of RAM, whereas the latter bumps up the requirements to 46MB of RAM. Of course, those are the absolute minimum limits to get the distro running – if you want to do more with it, especially for the graphical version, you'll want at least 128MB of RAM.

So let's give it a go. From the Tiny Core downloads page [2], click TinyCore on the left to grab the 16MB ISO image. You can burn this to a CD-R and boot it on a real PC (make sure the PC's BIOS is set to boot from the CD drive first, rather than the hard drive), but to save time, you can try it in a PC emulator such as VirtualBox or Qemu. Just make sure you have an emulated CD/DVD drive set up and assign it to the ISO image file you just downloaded – then boot it up.

As you may expect, Tiny Core starts up at lightning speed. After a few kernel messages, you'll see a flash and then the "desktop." I've put that in quotes because, compared with the likes of KDE or Gnome, it's rather minimal, but not completely bare like certain keyboard-driven window managers. At the bottom of the screen, you'll find a simple dock with a few icons in it for shutting down the distro, opening the control panel, and launching apps (more on that in a moment).

For such a streamlined distro, you may expect to use the command line for all configuration jobs, but the control panel includes various (rather ugly but functional) little tools for configuring the (wired) network, setting the date and time, and managing system services. Together with the included text editor and terminal, these tools make the distro quite usable out of the box – it isn't just a tech demo that shows X and does nothing else (Figure 1).

Figure 1: A freshly booted Tiny Core, showing the various included tools – not bad for just 16MB!

So how does all this fit into 16MB? For starters, many of the GUI apps are based on the Fast Light Toolkit (FLTK) [3], which doesn't have all the bells and whistles of Gtk or Qt but covers the basics. Similarly the window manager is FLWM (using the same toolkit), which requires very little disk space or RAM. Under the hood, the supplied Linux kernel is rather limited when it comes to features and modules – hence why there's no WiFi support by default.

The biggest space saver, though, is simply the lack of supplied software. With Tiny Core Linux, you're given the absolute bare essentials of a graphical operating system. Where you go from there is completely up to you, which makes the distro ideal for setting up a web kiosk, for instance, where you don't want users to have access to anything other than a web browser. It's also a useful distro for schools, where you also want a very specific set of software installed. (Of course, many other distros let you fine-tune the range of installed software, but with most of them you spend more time removing unwanted stuff.)

Beef It Up

So, how do you install additional software? Click the Apps button in the dock at the bottom of the screen, and a dialog box will appear asking if you want Tiny Core to find the fastest mirror server for downloading packages – so click Yes. After a few moments, the main application browser window appears; it's rather spartan by default and doesn't show any available software, but you can fix that by clicking Apps in the top-left to open a menu. Then, go to Cloud (Remote) and Browse. Et voilà: You'll see a list of .tcz files down the left-hand side (see Figure 2).

Figure 2: Tiny Core includes hardly any software, but you can add more using the Apps tool.

These .tcz files are Tiny Core packages, so click one and you'll see some description text in the right-hand panel. You can also search for specific packages using the bar at the top. For example, to install Dillo [4], a super slimline (and somewhat feature-lacking) web browser that's built with FLTK, type dillo into the search bar, hit Enter, and then select the result in the left-hand panel. Then click the Go button at the bottom of the window, and Tiny Core will download and install Dillo into RAM (so nothing is written to the hard drive at this point).

With a decent Internet connection, this should only take a few seconds, and once the process has completed, you'll see a new icon in the right-hand side of the dock to launch Dillo. (You can also launch programs by right-clicking on the desktop and going into the Applications menu that appears.) By and large, Dillo works like a regular web browser, with familiar keyboard shortcuts: Ctrl+L to select the address bar, Ctrl+T to open a new tab, and Ctrl+W to close a tab.

In terms of HTML and CSS rendering capabilities, however, it's rather limited: Many complicated websites will look glitchy or simply not work at all. For basic browsing tasks, such as reading Wikipedia (Figure 3), it does a decent job and is much more suitable than Firefox (which is also available as a Tiny Core package) on very old hardware or machines with limited RAM.

Figure 3: Dillo is a super svelte web browser that's great for older machines, but it falls short on complex websites.

Indeed, if you're using Tiny Core to revive a dusty old PC with just 64MB or 128MB of RAM, you'll want to stay away from applications that install shedloads of dependencies and fancy toolkits. You can stick with FLTK apps to conserve resources, and while many of them look clunky and dated, they handle the basics. Some examples worth checking out include Fluff (a file manager), flPicSee (an image viewer), and Flit (an applet tray that provides battery information and a clock – run it from a terminal). To explore more FLTK software, check out the wiki [5].

So far I've been using Tiny Core Linux in Live mode, directly from the CD ISO image, but it's also possible to install it permanently to your hard drive, as well. To do this, first install tc-install-GUI via the Apps program, as described earlier in this tutorial. A new tc-install icon will be added to the dock at the bottom, so click it to start the installer. I won't go through every step of the installation process here, because it's already described in great detail on the installation page [6]. Another useful resource as you explore Tiny Core in greater depth is the Core book, Into the Core, which is available both in PDF and printed formats  [7].

Damn Small Linux

If you're looking for something that has slightly more features than Tiny Core Linux – at least, in its freshly booted state – then it's worth investigating Damn Small Linux. If you've been using Linux for a while, you've probably heard of this distro before, but it's worth noting that there's a slightly more recent version than the one offered on the website [8].

You'll see two versions offered for downloading: 3.4.12 and 4.4.10. The problem is, both are pretty ancient now – the latter is from 2008. Look a bit farther down the page, though, and you'll see that there's a 4.11 release candidate; click the link, which in turn takes you to a forum post, and copy and paste the URL of the ibiblio mirror [9] to get the ISO image – dsl-4.11.rc2.iso. It's a shame this isn't simpler from the website front page, but never mind.

This version is still rather old given the rapid pace of Linux distro development (it's from 2012), but it only weighs in at 50MB and provides plenty of functionality to bring old PCs back to life. As with Tiny Core Linux, you can burn the ISO image to a CD-R or boot it up in a PC emulator. The distro runs in Live mode, directly from the CD, although you can install it to your hard drive or a USB key as well (more on that in a moment). System requirements are very modest: You can run the distro on an old 486 PC with just 64MB of RAM, although 128MB is recommended for running multiple apps at the same time.

When you boot up Damn Small Linux (Figure 4), you'll notice something that's now familiar: The Dillo web browser pops up automatically, showing an offline web page with some hints and tips about the distribution. It's worth noting that Firefox is preinstalled as well (see the icon on the desktop, and note that you only need to click once to launch apps from the desktop). Along the bottom of the screen, you'll find a panel with the main menu (DSL), launchers, a taskbar, and a clock, whereas in the top-right, a stats widget shows CPU, filesystem, and RAM usage (the latter stat is especially useful if you're squeezing the distro onto a box with very little RAM).

Figure 4: Damn Small Linux is a slightly larger (at 50MB) alternative to Tiny Core, but includes lots of useful mini apps.

Damn Small Linux is bundled with various utilities and productivity apps. Most of these are available via the desktop icons, but some others are tucked away in the DSL menu. For office work, the Ted word processor and Siag spreadsheet are rather basic tools that don't compare to the likes of LibreOffice, but are OK for simple jobs (or for children to learn computing basics).

Some multimedia apps for playing music files and videos are included (see Apps | Sound in the menu), along with an IRC client, image editor, and a handful of games (mostly card games). Even though most of the supplied apps are rather limited compared with what you get in Ubuntu, Fedora, openSUSE, and the like, it's still impressive that so much functionality is crammed into 50MB. On top of that, a configuration panel  – DSLpanel on the desktop – lets you set up network access, change the keyboard layout, and tweak other options.

It's possible to install Damn Small Linux to your hard drive by following the guide on the distro's website [10], although it's a rather involved process and requires some command-line knowledge. On the whole, it's a great little distro for breathing life back into seemingly unusable old PCs, and I'd love to see an updated version in the future. For more on micro distros, including ones that run from floppy disks, see the boxout "Linux on a Floppy Disk."

Linux on a Floppy Disk

One of the most impressive things I've ever seen in the Linux world is MuLinux [11]. This insanely teensy distro was developed in the early 2000s, and I remember getting it running on an ancient Compaq laptop. MuLinux managed to squeeze a functioning desktop Linux installation into just two 1.4MB floppy disks. Yes, that includes the X Window System, the FLWM window manager, and various extra tools.

MuLinux (Figure 5) can be expanded with other floppy disks, as well, adding features such as the GCC compiler toolchain, Perl scripting language, Netscape, and other bits and pieces. Getting MuLinux to run in emulators like Qemu is rather challenging these days, but if you have a PC or laptop with a working floppy drive in the attic, it's worth trying out just for the novelty value.

Figure 5: This is MuLinux – a graphical desktop Linux distro that fits on just two floppy disks!

A similar two-floppy distro is blueflops [12]. This doesn't include the X Window System but features the Links web browser that does some rudimentary image rendering using SVGAlib. It's not something you'd seriously want to use for daily web browsing, but like MuLinux, it's just fascinating to see in action.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News