What is Linux?

Linux is a family of open-source operating systems which powers servers across the globe

Linux is the family of operating systems which powers business for most of the top companies around the world. And the majority of applications in the cloud (54% of them1) are running on Linux virtual machines. But what exactly is Linux, and what are the key things you should know?

Linux is a valuable skill to have on your resume. With knowledge of Linux, you could become a systems administrator, a better developer, or move into DevOps and SRE roles.

In this article we’ll take a look at Linux from a high level, and see what you should know.

A penguin sitting on an ice cream

Distributions are different flavours of the Linux operating system

What is Linux?

What is it: Linux is the name of a family of operating systems which all share something in common: they’re all based on the same kernel. The kernel itself is called the Linux kernel and was created by Linux Torvalds.

So there isn’t a single “Linux” operating system. Many operating systems include the Linux kernel. Ubuntu, Fedora, Red Hat Enterprise Linux, and Debian are all examples of operating systems which include the Linux kernel.

Linux-based operating systems are usually called Linux distributions.

What does the kernel do?

The kernel is the part of an operating system that has full privileges to the computer and its resources, like disk and memory. The kernel has a couple of important jobs:

  • to provide a safe and secure way for programs to access resources
  • to fairly share resources among programs that need them.2

Why use the same kernel? Why not just write your own?

It takes a lot of time and hard work to write a secure kernel.

So instead of writing their own kernels, Linux distributions simply include the Linux kernel, since it has a license that allows it to be distributed freely.

Torvalds wrote the first Linux kernel himself, but since then there have been contributions to the Linux kernel from hundreds of other developers all over the world.

How does a Linux distribution get made?

  1. Start with an idea. A community group, a company, or even an individual developer, decides to create a Linux distribution.

  2. Bring in the Linux kernel. A distribution always begins with the Linux kernel.

  3. Add tools and programs. To turn it into a complete operating system, programs, libraries and tools are added.

  4. Test and release it. The distribution is made available for download or sale.


Components of Linux

A Linux distribution is a bit like a kit car. It’s a collection of tools and components that fit together into a complete product.

A Linux distribution (or “distro”) is a packaging of the kernel, and a bunch of tools, as a functioning operating system. A typical Linux-based operating system could include the following components:

  • Linux kernel. The kernel is loaded when the system boots up. It talks to hardware devices, manages memory, and provides an environment for applications to run.3

  • init program. Init is a type of component in Linux which is responsible for starting and supervising essential services.4 The init program can vary depending on the distribution, but the most common ones are systemd and System V.

  • Essential tools and utilities. Any operating system needs tools, so that you can do basic stuff, like copying files. In most Linux distributions, these tools are taken from packages provided by the GNU project. GNU created a big set of tools that are included with most Linux systems. For example, the coreutils package provides most of the commands which people associate with Linux – like cp (copy files) and cat (print a file). For more info: type info coreutils.

  • The shell. When you log on to Linux, you’ll probably see a shell prompt ($). The shell is the “command-line interpreter”. You can use the shell to run commands, chain them together, run scripts and more. There are many shells; bash is a well-known one and provided by the GNU project. The shell is extremely powerful, and is one of the reasons why tasks in Linux can be automated so reliably.

  • Graphical desktop environment. In Linux, the desktop is completely optional; you don’t need one to run Linux. But if you want a GUI, there are two components which provide it:

    • the display server like X or the newer Wayland, which provides the backend capabilities needed to display things on screen;

    • and the desktop environment like GNOME or KDE, which provides the familiar desktop, the user interface, and some apps.

  • Other programs. A distribution typically includes a bunch of other programs and libraries. These might be general tools, like programming languages, or tools for specific purposes, if the distro is aimed at a specific audience.

  • Package manager. When you need to install other applications, you usually use the system’s package manager. The package manager can download applications from an online repository (kind of like an ‘App Store’). In Fedora/RHEL, you use the command dnf, and in Ubuntu you use apt.

The components of a Linux OS can be swapped or replaced, as you wish. For example, you can swap your shell from bash to something else, or choose a different desktop environment.


FAQs

Find answers quickly with these top newbie Linux questions:

How do I learn Linux?

A lot of people learn Linux from books, courses or YouTube.

But the best way to learn Linux is to get daily practice. The best way to do that is work in a job where you’ll be using Linux every day. If you’re a programmer, you could try changing your desktop to Linux, so that you are forced to learn it.

How do I get certified in Linux?

If you want to prove your Linux knowledge, and get a certification for your resume, then you can take an exam. Try one of these Linux certifications, from reputable organisations:

Wrapping up

Linux is a complicated topic, but it’s made easier once you understand some of the technical terms, and how the different components in Linux work together.

Linux is a family of operating systems which powers business applications on servers, in data centers and in the cloud. It’s widely used because it’s reliable and highly performant, which makes it excellent for business and ecommerce applications.

Linux is an excellent skill to have on your resume. It can help you get jobs in system administration, DevOps, Site Reliability Engineering and many more. We hope this article has helped you begin your Linux learning journey!

  1. The state of Linux in the public cloud. Red Hat, 2019. 

  2. Kohler, Eddie. CS 61: Systems Programming and Machine Organization: The kernel. Harvard, 2021. 

  3. Daniel P. Bovet, Marco Cesati. Understanding the Linux Kernel, 3rd Edition. O’Reilly, 2005. 

  4. Ward, Brian. How Linux Works, 3rd Edition. No Starch Press, 2021. 

Tom Donohue

By Tom Donohue, Editor | Twitter | LinkedIn

Tom is the founder of Tutorial Works. He’s an engineer and open source advocate. He uses the blog as a vehicle for sharing tutorials, writing about technology and talking about himself in the third person. His very first computer was an Acorn Electron.

Join the discussion

Got some thoughts on what you've just read? Want to know what other people think? Or is there anything technically wrong with the article? (We'd love to know so that we can correct it!) Join the conversation and leave a comment.

Comments are moderated.