An innovative, immutable filesystem

Totally Relaxed

© Photo by Christine Donaldson on Unsplash

© Photo by Christine Donaldson on Unsplash

Article from Issue 253/2021
Author(s):

With its immutable filesystem, rlxos prevents a broken system while simultaneously allowing changes via OverlayFS.

When it comes to the Linux distro scene, variety is unrivaled. Willing Linux users can choose from hundreds of distributions. Although this delights die-hard distro hoppers, others might find it too much to handle. While many distributions differ only in the minor details, the strategy behind rlxos [1], an immutable filesystem, is definitely not that of an off-the-shelf Linux distro.

Pronounced Relax OS, rlxos is one of the modern Linux derivatives with a progressive strategy (others include Fedora Silverblue, for example). The developers of Red Hat, Fedora, Endless OS, systemd, and the Gnome desktop see these strategies as the future of distributions, but this has not yet been universally accepted in the various communities.

Unbreakable System

In general, these strategies envisage immunizing the filesystem against vulnerability through updates by always replacing the complete image during updates. In tech speak, these systems are dubbed immutable (i.e., unchangeable). If something goes wrong during the update, the user can roll back to the previous image upon restarting GRUB. In addition, such distributions often prefer new package management systems, such as Flatpak or AppImage, over packages in the classic DEB and RPM formats or those maintained by the respective distributions.

Joining the ranks of immutable distributions, rlxos's basic strategy is by no means new: Changes to the system end up in a layer above the read-only root filesystem and thus cannot be changed. I'll discuss in a moment where this principle has been used in the past, but I'll first look at how this modern approach affects the still very young rlxos.

To follow this article, first download the 1.3GB image of the current rlxos 2107 from the website [1]. There is only a 64-bit image, the name of which indicates that Gnome is used as the desktop. Launched last year as Releax OS, rlxos is not based on any other distribution; it was created from scratch and uses Wayland as the default session type.

Relax!

Not designed as a Live distribution, rlxos boots directly into a graphical installer (Figure 1). Presumably, there is no Live version because rlxos in its installed form, with an overlay system over the immutable root filesystem, uses the same mechanism that Live media use to save changes to the system. Therefore, rlxos is always effectively going to be a Live system with persistence. For an explanation of how this overlay mechanism works, see the "OverlayFS" box.

OverlayFS

OverlayFS allows a (typically writable) directory tree to be overlaid on top of another, read-only directory tree that usually contains the root filesystem. All changes are made to the upper, writable level. This type of mechanism has been around since Live CDs from the early days of Knoppix, but there are a variety of other applications. Besides OverlayFS, there are other union filesystems, such as the original UnionFS, aufs, or overlay2 used by Docker, with OverlayFS being the most powerful variant. In some respects, device mappers, ZFS, and Btrfs are also part of this genre, even if their use seems rather marginal in this context because they are used entirely for storage purposes.

Figure 1: After starting rlxos, you are taken directly to a wizard that guides you through the installation in just a couple of steps.

The installer first prompts you to choose a partition. After pressing the Partition button, GParted opens. You can then create a new partition if required. Pressing Next then takes you to the partition selection and, in the next step, to boot device selection. Then, rlxos is ready for installation.

At this point, make sure you don't blink, or you will miss the system setup. In my case, the installation took all of 12 seconds on a machine with a fast Ryzen 7 CPU by AMD, which can be explained by the fact that, due to the principle involved, this is not a real installation. The installer (in simple terms) just creates the filesystem and writes the system image compressed by SquashFS to it, before proceeding to start the image. As a result, rlxos does not consume more than the 1.3GB taken up by the image itself.

Welcome

After the obligatory reboot, you will see the familiar Gnome welcome screen (Figure 2), which completes the installation in a few steps with information about the keyboard layout and time zone, as well as creating a user account. In my lab, I also included a Nextcloud instance, which I was later able to open in the file manager without any problems (Figure 3).

Figure 2: The welcome tour, which is almost obligatory nowadays, guides you through the final steps of the installation. Afterwards, take a look at the useful documentation, which introduces you to using rlxos.
Figure 3: During the welcome tour, you have the opportunity to integrate online services. This worked smoothly in with my Nextcloud instance.

After the process completes, you will find yourself in a customized Gnome environment that has a taskbar using Gnome's Dash to Panel extension at the bottom (Figure 4). Qogir is used as the theme and icon set.

Figure 4: The desktop looks modern and tidy. At the bottom you can see the Gnome Dash to Panel extension.

Next, you can take another welcome tour, which points out that rlxos natively supports the AppImage package format. In addition to AppImages, rlxos can handle Flatpaks and Snaps, although it does not preinstall the required frameworks.

I found the welcome tour a tad too superficial for a distribution that deviates from the norm and would definitely recommend reading the documentation [2], as well as visiting GitHub [3], where the project is maintained. The rlxos blog [4] gives you further insights. For example, it introduces the built-in package manager, PKGUPD [5], and explains how to mount rlxos directly from a previously installed Linux distro without the installer [6].

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

  • Parcel Service

    The traditional package management systems on Linux are now somewhat outdated, but AppImage, Flatpak, and Snap see some interesting new management systems enter the fray.

  • bauh

    The bauh package manager can cope with Flatpaks, Snaps, AppImages, AUR, and native web apps.

  • Stacer

    Stacer is a handy graphical tool for cleaning up your Linux system.

  • Linux Mint Drops Snap

    Linux Mint has officially dropped their support for Canonical’s snap packages.

  • Chob

    If you are looking for an application in AppImage, Flatpak, or Snap app stores, Chob lets you perform a keyword-based search from the command line.

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Find SysAdmin Jobs

News