What Is Linux#

Concepts#

The Kernel and the Operating System#

When people say “Linux,” they usually mean one of two things:

  1. The Linux kernel — a piece of software that sits between your hardware (CPU, RAM, disk, network card) and everything else. The kernel manages resources: it decides which program gets CPU time, how memory is allocated, how data flows to and from disks and network interfaces. You never interact with it directly.

  2. A Linux-based operating system — the kernel plus all the software that makes a computer usable: a shell (command-line interface), file utilities, a package manager, a desktop environment, and thousands of applications.

Think of it this way: the kernel is the engine of a car. An operating system is the complete car — engine, chassis, steering wheel, seats, and dashboard.

GNU/Linux#

Most of the essential tools that come with a Linux operating system: the shell, the file utilities (cp, mv, ls), the compiler, the text editor, were originally written by the GNU Project, started by Richard Stallman in 1983. The GNU tools were designed for a free operating system but lacked a kernel. In 1991, Linus Torvalds wrote the Linux kernel as a university project in Helsinki. When the GNU tools were combined with the Linux kernel, a complete free operating system was born.

This is why some people insist on calling it “GNU/Linux” rather than just “Linux.” In practice, almost everyone says “Linux.” This course follows that convention, but now you know the history.

What Is a Distribution?#

A Linux distribution (or distro) is a complete operating system built around the Linux kernel. A distro bundles:

  • The Linux kernel (a specific version)
  • A package manager (how you install and update software)
  • A default set of software (text editor, web browser, shell, etc.)
  • A configuration system (how the system is set up and managed)
  • Optionally, a desktop environment (graphical interface)

Different distributions make different choices about these components. That is what distinguishes them.

Some major distribution families:

Family Package Format Package Manager Examples
Debian .deb apt Debian, Ubuntu, Linux Mint, Pop!_OS
Red Hat .rpm dnf / yum RHEL, Fedora, CentOS Stream, Rocky Linux
Arch .pkg.tar.zst pacman Arch Linux, Manjaro, EndeavourOS
SUSE .rpm zypper openSUSE, SLES

This course focuses on the Debian family, specifically Ubuntu and Debian.

Open Source and Free Software#

Linux and most of the software that runs on it are open source: the source code is publicly available, and anyone can read, modify, and redistribute it under the terms of a license (most commonly the GPL — GNU General Public License).

This has practical consequences for you:

  • It’s free. You can download, install, and use Linux without paying anyone.
  • It’s transparent. If a program does something unexpected, anyone can read the source code to find out why.
  • It’s community-driven. Thousands of developers worldwide contribute to Linux. Bugs get found and fixed by the community.
  • It respects your freedom. No telemetry you cannot disable, no forced updates, no lock-in. Basically the opposite of Microslop.

Why Learn Linux?#

  • Servers run Linux. Over 90% of the world’s servers, including nearly all of the cloud (AWS, Azure, GCP), run Linux.
  • Development environments. Most programming languages, frameworks, and tools are designed with Linux (or Unix) in mind first.
  • Stability and performance. Linux systems routinely run for years without rebooting.
  • Control. You decide what your system does, not the vendor. Every aspect is configurable.
  • Career value. Linux skills are in demand across system administration, DevOps, cloud engineering, cybersecurity, and software development.

Lab#

This lesson is conceptual — there is no hands-on lab. However, here is an exercise to start building intuition:

Exercise 1: Explore DistroWatch#

Open a web browser and go to distrowatch.com. Browse the list of distributions. For each of the following, find the distribution and note which family it belongs to and what package manager it uses:

  1. Ubuntu
  2. Debian
  3. Fedora
  4. Arch Linux
  5. Linux Mint

Exercise 2: Identify the Kernel#

If you already have access to any Linux system (even WSL on Windows), open a terminal and run:

uname -r

This prints the kernel version. Example output:

6.8.0-41-generic

The format is major.minor.patch-build. In this example:

  • Major version: 6
  • Minor version: 8
  • Patch: 0
  • Build: 41-generic (Ubuntu’s build identifier)

Review#

1. What is the difference between the Linux kernel and a Linux distribution?

The kernel is the core software that manages hardware resources (CPU, memory, disk, network). A distribution is a complete operating system that bundles the kernel with a package manager, system tools, applications, and optionally a desktop environment.

2. Why is the name "GNU/Linux" sometimes used instead of "Linux"?

Because most of the essential userspace tools (shell, file utilities, compiler) come from the GNU Project. “Linux” technically refers only to the kernel. GNU/Linux acknowledges that the operating system is a combination of the GNU tools and the Linux kernel.

3. What package format do Debian-family distributions use?

.deb packages, managed by apt (and the lower-level dpkg).

4. Name three practical reasons to learn Linux.

Any three of: servers run Linux (90%+ of cloud infrastructure), development tools are designed for Unix/Linux, stability and uptime, full user control and configurability, career demand across sysadmin/DevOps/security/development.

5. What does the command `uname -r` show?

The version of the Linux kernel currently running on the system.

6. What does "open source" mean in practice for a Linux user?

The source code is publicly available. Anyone can read, modify, and redistribute it. For the user this means: free to use, transparent behavior, community-driven development, and no vendor lock-in.


Next: Ubuntu and Debian