Chapter 1: Introduction to Linux

10 min read ▅▅ Beginner Updated July 2026

Learning Objectives

  • Understand what Linux is.
  • Learn the difference between UNIX, GNU and Linux.
  • Understand why Linux dominates enterprise environments.
  • Learn the history behind Linux.
  • Prepare for Linux Architecture in the next section.
  • Understand common Linux terminology used throughout this course.

Prerequisites

No previous Linux experience is required. You need basic computer literacy and a willingness to use a terminal. Later chapters introduce networking, storage and shell scripting step by step.

1. Introduction

Linux is one of the most important operating systems in the world. It powers web servers, enterprise databases, cloud platforms, supercomputers, networking devices, embedded systems and even Android smartphones.

Unlike many commercial operating systems, Linux is open source, allowing anyone to study, modify and improve its source code. Because of its reliability, security and flexibility, Linux is the standard OS for servers, cloud platforms, and enterprise infrastructure.

Today Linux underpins most servers, cloud platforms, containers, and enterprise systems — including IBM Power.

2. What is Linux?

Linux is technically a kernel, not a complete operating system. The kernel is the core software that communicates directly with hardware and manages critical system resources such as CPU scheduling, memory, storage devices, networking and security.

To create a complete operating system, the Linux kernel is combined with utilities from the GNU Project, libraries, package managers, desktop environments and user applications. This complete operating system is commonly called GNU/Linux, although most people simply refer to it as Linux.

Component Purpose
Kernel Manages hardware, memory, CPU, storage and networking.
Shell Provides a command-line interface for users.
Filesystem Stores and organizes files and directories.
Applications Programs such as editors, browsers and databases.

The layered stack is shown in detail under Linux Architecture below.

3. Why Learn Linux?

Linux skills help whether you administer servers, support IBM Power and AIX environments, or work with cloud and automation tooling. Most enterprise platforms either run on Linux or integrate closely with it.

Learning the command line and core OS concepts here gives you a practical foundation for later topics — filesystems, services, networking and storage — without needing a specific job title first.

Technology Uses Linux?
Public cloud VMsYes (commonly)
ContainersYes
Oracle Database / SAPOften on Linux
IBM Power SystemsYes (AIX & Linux)

4. History of Linux

Understanding Linux history helps explain why modern Linux systems are built the way they are today. Linux was not developed from scratch in isolation. It evolved from decades of innovation beginning with UNIX and later the GNU Project.

UNIX (1969)

UNIX was developed at Bell Labs by Ken Thompson and Dennis Ritchie. It introduced many concepts that are still used today, including hierarchical filesystems, multitasking and multi-user computing.

GNU Project (1983)

Richard Stallman started the GNU Project with the goal of creating a completely free UNIX-like operating system. The project successfully developed compilers, editors, shells and many essential utilities—but it still lacked a working kernel.

Linux Kernel (1991)

In 1991, Finnish computer science student Linus Torvalds developed a new kernel as a personal project. When combined with GNU software, it became the operating system we now know as Linux.

1969
│
├── UNIX
1983
│
├── GNU Project
1991
│
├── Linux Kernel
1992
│
├── GNU + Linux
Today
│
└── Servers • Cloud • Enterprise
                
Evolution of modern Linux.

5. Linux Architecture

Linux follows a layered architecture where each layer has a specific responsibility. This modular design makes Linux stable, secure and easy to maintain. Applications do not talk to hardware directly. They call system libraries, which issue system calls (syscalls) into the Linux kernel; the kernel then manages the hardware. The shell is one way users start programs from a terminal — not a required hop for every application.

+----------------------------------+
| User Applications                |
| (GUI apps, daemons, CLI tools)   |
+----------------------------------+
         │                    │
         │ (interactive)      │ (typical path)
         ▼                    ▼
+------------------+   +------------------+
| Shell            |   | System Libraries |
| (bash, etc.)     |   | (glibc, etc.)    |
+------------------+   +------------------+
         │                    │
         └────────┬───────────┘
                  ▼
         +------------------+
         | System Calls     |
         +------------------+
                  │
                  ▼
+----------------------------------+
| Linux Kernel                     |
+----------------------------------+
                  │
                  ▼
+----------------------------------+
| CPU • Memory • Disk • NIC        |
| Hardware                         |
+----------------------------------+
                
High-level Linux architecture. The shell is one path to start programs; most apps reach the kernel through libraries and syscalls.

For example, when you type ls in a terminal, the shell starts the ls program. That program uses libraries and syscalls to ask the kernel for directory entries; the kernel reads the filesystem and returns the results, which ls then prints to your terminal.

Architecture Components

Layer Responsibility
User Applications Programs such as Firefox, MySQL, Apache and Vim.
Shell Command interpreter for interactive use; starts programs when you type commands.
System Libraries Provide standard functions; wrap syscalls used by applications (and by the shell).
Kernel Controls hardware and manages system resources.
Hardware CPU, RAM, Storage, Network Interface Cards and peripherals.

6. Linux Kernel

The kernel is the heart of Linux. It starts during system boot and remains in memory until the system is powered off. Every hardware device communicates with users through the kernel. Without the kernel, applications cannot access the processor, memory, storage devices or network interfaces.

Main Responsibilities of the Kernel

Component Function
Process Management Creates, schedules and terminates processes.
Memory Management Allocates RAM and manages virtual memory.
Device Drivers Controls hardware devices such as disks and network adapters.
Filesystem Management Provides access to files and directories.
Networking Handles TCP/IP communication and routing.
Security Enforces permissions and access control.

7. What is a Shell?

The shell is a command interpreter that provides the interface between the user and the Linux kernel. Whenever you type a command, the shell interprets it and requests the kernel to perform the required operation.

User ──► Command ──► Shell ──► Kernel ──► Hardware
                

This diagram shows the interactive CLI path: typed commands go through a shell. Graphical apps and many daemons talk to the kernel through libraries and system calls without a shell in the middle (see the architecture section above).

Popular Linux Shells

Shell Description
Bash Default shell on most Linux distributions.
Korn Shell (ksh) Popular in enterprise UNIX environments including AIX.
Zsh Advanced interactive shell with plugins.
Fish User-friendly shell with auto suggestions.
Tcsh Enhanced C Shell.

Useful Commands

# Login shell (from your account settings)
echo $SHELL

# Current shell process (this session)
echo $0
ps -p $$ -o comm=

# List installed shells
cat /etc/shells

# Change login shell
chsh

8. CLI vs GUI

Linux systems can be managed using either a Command Line Interface (CLI) or a Graphical User Interface (GUI). While both perform the same tasks, enterprise administrators overwhelmingly prefer the command line.

GUI CLI
Mouse-drivenKeyboard-driven
Easy for beginnersPowerful and fast
Consumes more resourcesLightweight
Difficult to automateEasy to automate using scripts
Requires graphical UIWorks remotely over SSH

9. Linux Distributions

A Linux distribution combines the Linux kernel with system utilities, package managers, libraries and applications. Different distributions are designed for different purposes such as desktop computing, enterprise servers or software development.

Distribution Based On Typical Usage
UbuntuDebianDesktop, Cloud
DebianIndependentStable Servers
Red Hat Enterprise Linux (RHEL)Fedora (upstream)Enterprise
Rocky LinuxRHELEnterprise
AlmaLinuxRHELEnterprise
FedoraIndependent (upstream of RHEL)Latest Technologies
Oracle LinuxRHELOracle Workloads
openSUSEIndependentDesktop & Enterprise

10. Why Enterprises Prefer RHEL-Based Linux

Although Ubuntu is popular among developers, many enterprise organizations choose Red Hat Enterprise Linux (RHEL) or compatible distributions such as Rocky Linux and AlmaLinux.

  • Long-term support (LTS)
  • Vendor support
  • Security updates
  • Certified hardware compatibility
  • Enterprise software certification
  • Stable release lifecycle
  • Professional technical support
  • Mandatory access control frameworks such as SELinux (RHEL family) or AppArmor (common on Ubuntu) that enforce policy beyond Unix DAC permissions — check status with getenforce or aa-status

Try These Commands

Open a terminal and run a few orientation commands:

uname -a      # kernel and system info
whoami        # current user
hostname      # system hostname
echo $SHELL   # your login shell
echo $0       # current shell process name

Commands Covered

  • uname — print kernel and system information
  • whoami — print the current user
  • hostname — show the system hostname
  • echo $SHELL — show the login shell
  • echo $0 / ps -p $$ -o comm= — show the current shell process
  • cat /etc/shells — list installed shells
  • chsh — change the login shell