# 5 Tiny Distros you have to try before you die
by Seth Kenlon

There are plenty of Linux distributions out there for you to choose from when deciding what you're going to run on a daily basis, but some are so small that they tend to go unnoticed. But tiny Linux distributions are powerful innovations: an entire operating system driving a computer on less than 1 GB hard drive space and half as much RAM is the ultimate software hack. It has many uses, including: 

* Saves old and slow computers from the rubbish bin. Reject planned obsolescence and use computers until they fall apart, not just when they start to feel slow.
* Boot broken or corrupted systems from a thumbdrive so you can recover data or repair boot partitions.
* Ensure a safe and private environment when on a public computer. Boot a public computer in a hotel lobby or a library from a thumbdrive so that you know your operating environment is secure. 

There are plenty of lightweight distributions out there, like [Lubuntu](http://lubuntu.net), [Peppermint OS](http://peppermintos.com), and [Bodhi](https://www.bodhilinux.com/), but there's something special about the truly tiny. Here are five tiny distros you owe it to yourself to try.

## Tiny Core Linux

![Tiny Core Linux](tinycore.jpg)

At 11 MX for a text console and 16 MB for a GUI, Tiny Core is almost impossibly small. I dug through my collection of old thumbdrives and the smalles one was 128 MB, which is still 8 times the size of the Tiny Core image.

By default, Tiny Core includes the base OS, assuming that you have an ethernet connection to the internet so you can install only the applications you need. It's such an extremely efficient model that it doesn't even include an application to install the OS (although you can download it from the Tiny Core repository when you're ready to install).

I've run Tiny Core from a 128 MB thumbdrive on a system with 512 MB RAM, and the performance was, as you might expect from an OS that only takes 16 MB, excellent. Performance slows only when browsing the Internet in a web browser, but you can blame the complexity of most modern websites for that more than you can blame Tiny Core.

Without a GUI, Tiny Core runs well on a mere 64 MB RAM.


### Installation 

Download Tiny Core from [tinycorelinux.net](http://tinycorelinux.net/welcome.html) and write it to a thumbdrive with ``dd`` or [Etcher](https://www.balena.io/etcher/).

Installing Tiny Core is easy, once you download the ``tc-install`` or ``tc-install-GUI`` application using the **Apps** icon in the launcher bar at the bottom of the screen.

![The Tiny Core installer](tc-install.png)

You have several options for how you want to install. You can install Tiny Core to a thumbdrive formatted as a Linux drive (this requires your computer to allow booting from a USB drive, which is common in most modern PCs but was less common for older ones), a Microsoft FAT thumbdrive (a hack for PCs that don't normally boot from USB drives), or even to a directory in an existing Linux partition.

The installation is quick, and when you're done, you can reboot your computer and boot into your Tiny Core Linux OS. 


### Applications

Since it comes with little more than a text editor and a terminal, the first thing you should do is install some applications. The **Apps** icon in the bottom launcher bar displays all the Tiny Core packages available to you. The **Apps** repository doesn't contain only applications, but includes important drivers as well, so it's useful when you're looking to get a wifi card or a printer working.

When installing a new application or utility, you can choose between having the package load into Tiny Core at boot time or on demand. Choosing to load a package at boot results in just what you'd expect when installing an application: it's available to you immediately, and is still available after a reboot. Choosing to load it on-demand means that Tiny Core downloads the package and makes it available to you now, but after a reboot it won't be loaded into memory. This potentially keeps your boot time fast and Tiny Core's footprint in RAM tiny, but it means the package data hasn't actually been loaded into memory until you use it for the first time each session. 

The application selection is a good mix between user-centric apps, like office and graphics applications, and server-centric, such as SAMBA and web servers. 

Of course, once you start adding applications to Tiny Core, it becomes less tiny. Even the **Tiny Core Plus** image, which includes all wifi drivers, from the Tiny Core website, is only about 100 MB, so "less tiny" is very likely still well under 256 MB or so.

### Bottom line

Tiny Core is ideal for old computers with few resources, network boot images, and anyone who values applications over the OS. Tiny Core is a great weekend project: build the OS you want from 16 MB up until you have the only as much of an OS as you need.


## SliTaz

![SliTaz Linux](slitaz.jpg)

The SliTaz Linux image is about 51 MB, about 4 times the size of Tiny Core but with an impressive collection of drivers and applications already included. In fact, if you didn't know any better, you might think you've booted into a 1 GB Ubuntu image, because everything you'd expect from a basic starter image is there: a text editor, web browser, a paint program, a spreadsheet application, and so on.

I've run SliTaz from a 128 MB thumbdrive on a system with 512 MB RAM, and the performance was excellent. Performance slows when browsing heavy Internet sites, but the inclusion of the lightweight [Midori](https://github.com/midori-browser/core) browser keeps most sites loading quickly.

At boot time, you can choose to run SliTaz without a GUI, which runs nicely on a mere 64 MB RAM.

### Installation

There are many download options for SliTaz because its developers and community provide many variations depending on potential system limitations. For instance, there's a low RAM version for systems with as little as 24 MB RAM, a version with Firefox instead of Midori, a version with no extra applications, and so on.

If you're overwhelmed by options and you just want to try it out, then just download the rolling release from [slitaz.org/en/get/#rolling](http://slitaz.org/en/get/#rolling). This version is roughly 50 MB in size and gets updated weekly. If you fall in love with SliTaz, then you can choose a better download for your needs, if the rolling release proves to be **too** fresh for you.

Once you've downloaded your choice of SliTaz images, write it to a thumbdrive with ``dd`` or [Etcher](https://www.balena.io/etcher/), and then reboot.

Installing SliTaz to a thumbdrive or hard drive is done through the **TazPanel** application. It guides you through partitioning your disk as needed, and then installs SliTaz to your chosen destination.

![SliTaz installer](slitaz-install.jpg)

### Applications

The **TazPanel** application is the control center of SliTaz. If you're a fan of OpenSUSE or Mageia (née Mandrake), then you might find TazPanel familiar, at least in concept: it's the single application providing access to system configuration, hardware detection, user and group management, system updates, and application installation.

Available applications satisfy most basic requirements, meaning that if you're not picky about which application you use to accomplish a task, then SliTaz's repositories probably have something you. If you have specific requirements (GIMP 2.10 instead of GIMP 2.8, for instance), then you'll have to learn how to generate your own SliTaz packages. The good news is that the ``tazpkg`` command can convert from several packaging formats, including:

* Debian packages (*.deb, *.udeb)
* RPM packages (*.rpm)
* Slackware packages (*.tgz)
* Puppy packages (*.sfs, *.pet)
* NuTyX packages (*.cards.tar.xz)
* Arch and Alpine Linux packages (*.apk, *.pkg.tar.gz, *.pkg.tar.xz)
* OpenWrt packages (*.ipk, *.opk)
* paldo packages (*.tar.bz2)
* Void packages (*.xbps)
* Tinycore packages (*.tce, *.tcel, *.tcem, *.tcz)


### Bottom line

SliTaz is a fast, small Linux distribution with a centralized control panel, making it easy to learn. Because its packaging tools can convert from other Linux packaging formats, its application selection is theoretically vast, making it easy for you to design your own work environment with all your favourite tools. SliTaz is small but lethal, just like its arachnid logo.



## Porteus 

![Porteus Linux](porteus.jpg)

Porteus offers a few different desktop options, with the smallest image being around 270 MB and the largest being 350 MB. That makes it one of the largest of tiny Linux images, but most of that space is dedicated to ensuring a smooth Linux desktop experience, to the point that you'll likely forget you're using a live distribution. Installing Porteus to an SSD drive or loading it to RAM during boot results in such a flawlessly smooth environment that you won't believe your OS occupies less space than half a CD-ROM.

Porteus is tiny in the sense that its base image is comparatively small, but depending on the desktop you choose, it can easily require up to 1 GB RAM to run. While other tiny Linux distributions tend to capitalize on minimalist applications to preserve space and resources, Porteus expects you to use it as you would any other distribution. Install all of your favourite applications and drivers and forget that you're running on a tiny compressed root file system.

### Installation

Download Porteus from your [closest Porteus mirror](http://porteus.org/porteus-mirrors.txt), choosing from MATE, LXQT, LXDE, OpenBox, XFCE, Cinnamon, or KDE, depending upon your preference. If you have no preference, the MATE or KDE desktop are each good at balancing image size with a familiar-feeling desktop experience.

You can install Porteus to a thumbdrive or an internal hard drive using the instructions provided in the [Official Installation Guide](http://www.porteus.org/component/content/article/26-tutorials/general-info-tutorials/114-official-porteus-installation-guide.html). The process is similar either way, and results in a compressed root filesystem that never changes. It's a stable and contained filesystem upon which you overlay your changes as you use it. When you reboot, changes you'd made and applications you've installed are loaded into memory so your environment is just as you left it.


### Applications

Applications are called "modules" in Porteus lingo, and are available from the Unified Slackware package Manager (USM), which draws from five different Slackware repositories, meaning you have plenty of applications to choose from.


### Bottom line

Porteus is a full Linux experience with a fraction of the space required. It's an excellent portable Linux distribution with lots of desktop options and lots of applications. 



## Bodhi Linux

![Bodhi](bodhi.jpg)

Bodhi might not look tiny at first glance, with an ISO image of 740 MB, but once it's installed you'll be amazed at just how tiny it is. Bodhi Linux runs smoothly on just 512 MB RAM, but looks and feels like the desktop of tomorrow. Bodhi uses the [Enlightenment](https://www.enlightenment.org/) desktop, a beautiful desktop that's lovingly crafted to be both small and powerful.

Bodhi doesn't just use Enlightenment, though, it adds to it. Bodhi's configuration applications and system setting panels are custom interfaces to Enlightenment's sometimes overwhelming array of options. Bodhi makes some sane default choices for you, and then provides a subset of options. If you're a die-hard Enlightenment user, Bodhi's interpretation of it might not be pure enough for you, but for many user's, Bodhi brings focus to the Enlightenment desktop.


### Installation

Download Bodhi Linux from [bodhilinux.com/download](https://www.bodhilinux.com/download), write it to a thumbdrive with ``dd`` or [Etcher](https://www.balena.io/etcher/), and then reboot.

The Bodhi installer is available from the **Applications** menu, in the **Preferences** category. The installation application is the **Ubiquity**, so the process is the same as installing Ubuntu. If you've never install Ubuntu before, don't worry; it's one of the easiest to install.

![Bodhi install](bodhi-install.jpg)

### Applications

Bodhi is based on the latest long term support (LTS) Ubuntu Linux release, so available software knows almost no bounds. If it's available for Ubuntu Linux, you have access to it.

### Bottom line

Bodhi Linux is a step down from the size of a typical Ubuntu install, and a step up from many other minimalist Ubuntu environments for its use of Enlightenment. If you're looking for a Linux distribution that runs lighter than most without resorting to overlay filesystems and application modules, then Bodhi is the distribution for you.


## Puppy Linux

![Puppy Linux](puppy.jpg)

Before there was Tiny Core or SliTaz or AntiX or Porteus, there was Puppy Linux. One of the original tiny Linux distributions, Puppy has endured for a decade and a half as a reliable bootable OS for old computers and new users alike. 

Upon first boot, Puppy does its best to guide the user through any necessary steps to ensures everything works as expected. It's a lot of windows to wade through, but once you get through it all, you know without a doubt what works and what doesn't work before you choose whether to install. 

Puppy is almost 300 MB and failed to work on anything under 1 GB RAM in my tests, so it's not exactly the tiniest Linux available. However, it's still a great operating systems less than 1 GB in size, and of those it's one of the very friendliest.


### Installation

Download Puppy Linux from [puppylinux.com](http://puppylinux.com/index.html#download) and write it to a thumbdrive with ``dd`` or [Etcher](https://www.balena.io/etcher/), or burn it to a CD or DVD, and then reboot.

Puppy can install onto nearly anything that accepts data. The installer application, available from the top launcher bar, is called **Puppy Installer**, and it manages both installing Puppy as well as applications for Puppy.

Puppy installer steps you through the process of installing the OS onto whatever media you have available. Puppy can boot from a thumbdrive, an optical disc, hard drive, and even an SD card. I've used Puppy on a computer with no hard drive whatsoever, no working optical drive, and no option to boot from USB. Because Puppy can write your configuration options to just about anything, I was able to use it with persistent data storage to an external device.

### Applications

The **Puppy Installer** application used to install the Puppy OS to your computer is also used to install applications onto Puppy. Because Puppy is based on Ubuntu, there aren't likely to be any Linux packages missing from its repositories, and if there are, then you can probably use a Flatpak.

### Bottom line

Puppy is the original tiny Linux. While it's not the tiniest any more, it's by far the easiest.


## Bonus: SilverBlue

![SilverBlue, not tiny, but tiny-adjacent](silverblue.jpg)

The concept of tiny Linux has changed over the years. Long ago, a tiny Linux distribution was something that you downloaded onto a CDR and ran from your optical drive while saving changes to external media. Later, it was something you ran from a thumbdrive with dedicated space for persistent changes. Now it's all of those things plus the ability to install to internal drives or directories. 

What no one expected was for Linux to kick off the container craze, in which applications are self-contained Linux systems running in a para-virtualized environment. What was once a niche hobby for people who either loved to optimize disk space or who loved to resurrect ancient computers quickly became a salient requirement for developers wanting to develop containers without adding too much overhead to their applications. All the work that had gone into minimalist, ephemeral Linux distributions suddenly paid off in an unexpected way.

With the concepts of what a root filesystem looks like, the Fedora Project's **SilverBlue** experiment is an effort to create an immutable OS. It's an operating system that never changes, and instead gets updates and application installs in the form of, essentially, containers.

SilverBlue is by no means a tiny Linux distribution at 2.1 GB, but in many ways it's a child of the tiny Linux and container movements.


## Installation

Download SilverBlue from [silverblue.fedoraproject.org](https://silverblue.fedoraproject.org/download) and write it to a thumbdrive with ``dd`` or [Etcher](https://www.balena.io/etcher/), or burn it to a CD or DVD, and then reboot.

After booting into SilverBlue, install it to an internal hard drive using [Anaconda](https://fedoraproject.org/wiki/Anaconda), the standard friendly Fedora Linux installer. 

![The Anaconda installer](silverblue-install.jpg)


## Applications 

SilverBlue doesn't install applications in the traditional sense, but instead runs containers over top of its base OS. Specifically, it uses [Flatpaks](https://docs.fedoraproject.org/en-US/fedora-silverblue/getting-started/#flatpak) for GUI applications and [Toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/) for commands.

Because Flatpaks aren't nearly as common as traditional Fedora RPM packages, SilverBlue also provides **package layering**, a way to convert Fedora RPM packages to SilverBlue.

### Bottom Line

SilverBlue could be a fun experiment testing out emerging technology, or it could be the future of the desktop OS. It's tiny only in the sense that its root filesystem remains the same size regardless of updates and applications added on to it, but it's worth looking at if you want to see where the strange obsession with tiny distributions has managed to deliver the Linux community and industry. Tip your hat to the 11 MB pioneers on your way out.