Is Linux Still Linux?


Image by CC-by-SA 4.0

That’s an interesting question which I’ve seen or heard expressed in a number of different ways. The most common being some form of, “We’ve never done it that way.”

Before I go any further, for this article I define the word, “Linux,” as the Linux Kernel and all of the commands and tools required to install, manage, and maintain a Linux installation but not the end user applications like FireFox and LibreOffice.

The Questions

At its creation by Linus Torvalds in 1992, Linux was a near copy of Minix which was intended to be a tool for teaching Unix from the viewpoint of the system administrator (SysAdmin).

In the more than 30 years since then many things have changed. We have systemd that replaced SystemV and has changed how startup, and service management are done. systemd brings with it many new commands and files, while obsoleting many old ones. NetworkManager does the same for network management, and firewalld does it for firewalls. Tools like logical volume management (LVM) with its own set of new commands, that seem like they’ve been around forever, were unheard of when I started using Linux. NVMe Solid State Devices (SSD) introduce another set of storage-related commands. Things like containers, Puppet, Ansible, and many more have also come into being in the time since Linux was first released.

The EXT series of filesystems that were created explicitly for Linux were never part of Unix. Most later tools for Linux never appeared in Unix, either.

More Questions

That and the question, “Is Linux even Linux any more?” can be answered only with some thought. It also brings up additional questions starting with, “Was Linux intended to be Unix-like.” The answer to that is definitely yes. Based on my reading of Linux history and Linus’ own book, “Just for Fun,” Linux — although it wasn’t called that at the time — was intended to be a version of Unix. You can read about why in Torvald’s book, some of my own books and articles, and many other places.

The entire structure and functionality of the Linux kernel is based on Unix even though it was completely rewritten. But that original kernel began changing almost immediately and the EXT filesystem is just the one that springs to mind.

In the decades since Torvalds joined the GNU utilities with his kernel, a lot has changed. The kernel itself has changed and grown considerably, more utilty programs have been added with the advent of new filesystems, NetworkManager, firewalld, systemd, and more. But those are the big ones and systemd is the one I read the most complaints about.

Even in its earliest form, Linux was never exactly Unix. The project that became Linux was intended to be a small “hobby” intended for use in learning Unix by replacing Minix as the learning OS. That little operating system has taken over most of the Internet and servers on the planet. Talk about unintended consequences!

Linux is still working on the desktop and has passed MacOS in number of users.

There were always better ways to do many Unix things. But through decades of corporate neglect and intentional obstruction, the various strains of Unix achieved little more than bugfixes and the addition of a few minor features. Even the Herculean efforts of Richard Stallman (RMS) to recreate a “free” Unix (GNU) resulted in nothing more than a collection of compilers and the GNU core utilities that were later compiled by Linus Torvalds and which have been included in every release of every Linux distribution since. Stallman’s dream of a GNU kernel has yet to materialize.

My Thoughts

None of that matters.

Talk about it all you want. Where it came from, and how it got here, how much it resembles something else or even its own self — all of that is irrelevant.

What does matter is that Linux is a healthy and powerful operating system. By healthy I mean improving, changing, evolving, and becoming more things to more people. Linux runs everywhere from a tiny helicopter on Mars, to the NASA supercomputer on the International Space Station (ISS), to all the top 500 supercomputers on the planet itself, to your smart watch or TV or other smart devices, to the vast majority of all web sites, and pretty much all the infrastructure of the Internet — all that runs on Linux.

Linux is designed for flexibility and change. Have you ever compiled the kernel? I have, and it’s an interesting process. For a start, you don’t need to change the code itself to make Linux run on any one of millions of device types, or to meet unique use cases. All you need to do is change the kernel configuration with a relatively simple tool prior to performing the compile. I mean, you still need to know what your doing when compiling the kernel for a specific use case such as a supercomputer or a Raspberry Pi. You’ll need to understand the many options and what they do, but none of that involves actual coding.

Linux is all about change. Embrace it.

Oh–yes! Linux is still Linux and always will be.