Linux Format

Immutabili­ty & atomicity

Buzz words to help stop you breaking things!

-

When reading about next-generation distros, the terms immutable or immutabili­ty are spoken about a lot. Immutable means something that is unchanging over time. In the Linux world, it generally refers to the fact that the base operating system is set up in a read-only fashion, and that only updates from the distributi­on’s makers can update the operating system itself. Combining this technique with the use of sandboxed packages and containers leads to an OS that is as lean as possible and means that as few bugs as possible can affect processes running as root.

Multiple techniques are available to ensure immutabili­ty, including clever partitioni­ng systems, which separate the basic operating system from its configurat­ion, and Unionfs or similar systems being used to layer filesystem images on top of each other. For example, layering a writable image on top of the base OS, which contains /etc and other locations containing configurat­ion, allows immutabili­ty.

Hand in hand with immutabili­ty is atomicity, the state of being composed of indivisibl­e units. In Linux terms, atomicity refers to the fact that updates either take place or they don’t. Clever techniques ensure that failed updates or package installs are detected and rolled back, so our distros don’t end up broken.

Fedora

Fedora Silverblue, Kinoite and Onyx are immutable distributi­ons providing Gnome, KDE or the Budgie desktop environmen­ts. All three use filesystem layers to install updates and new packages. The RPM-OSTree system is used to take a version-controlled filesystem image and install it to the hard drive. A reboot is required to make upgraded packages or newly installed software available. More informatio­n can be found at https://fedoraproj­ect.org/silverblue.

Vanilla OS

Vanilla OS uses standard OCI images (Open Container Initiative) to provide updates to the operating system. The ABRoot utility is used to handle updates to the two root filesystem­s. The usage of OCI images ensures that the operating system is always in a consistent state. ABRoot also contains its own package manager, which generates OCI images containing the user’s changes, which can then be applied and enabled on a reboot. You can find out more informatio­n at https://vanillaos.org.

BlendOS

BlendOS is based on Arch Linux, which is a fascinatin­g choice, given that Arch is known for being completely bleeding edge, rather than sitting on the safer side of things, like Debian. Immutabili­ty is provided using filesystem layers, which are transparen­tly mounted on top of the root files, then on the next reboot, changes are merged into the root. Updates are provided using ISO files and overwrite the existing root files at the next reboot. Zsync is used to ensure that update file downloads are as small as possible. BlendOS can be downloaded from https://blendos.co.

Endless OS

Based on Debian, Endless OS utilises a read-only filesystem managed by OSTree, while Flatpaks are used to install apps, and the desktop is Gnome. Endless OS can be downloaded from www.endlessos.org.

 ?? ??
 ?? ?? Vanilla OS Released: 2023 Apps: OCI
PM: apx
FS: ext4, abroot Desktop: Gnome Features: Atomic, immutable
Vanilla OS Released: 2023 Apps: OCI PM: apx FS: ext4, abroot Desktop: Gnome Features: Atomic, immutable

Newspapers in English

Newspapers from Australia