Skip to main content
Linux beginner Lesson 1 of 5

Linux Essentials

Understand Linux’s core concepts—filesystems, processes, users/permissions, and the practical commands you’ll use every day as an engineer.

Linux is the operating system underneath most servers, containers, and Kubernetes nodes.

This tutorial builds an engineering “mental model” of Linux so you can debug systems, automate tasks, and understand what your infrastructure is doing.

Theory first: how to think in Linux

Before commands, think in Linux as a set of layered abstractions: hardware resources, the kernel that controls them, and userland tools that express intent. Most production issues are not “Linux is broken,” but mismatches between these layers (permissions, process lifecycle, networking, or filesystem expectations).

If you understand that model, troubleshooting becomes systematic: identify the failing layer, inspect the right signals, and apply the smallest corrective action.

Learning outcomes

By the end of this tutorial, you’ll be able to:

  • Explain the Linux filesystem hierarchy basics
  • Understand processes and signals
  • Use users, groups, and permissions effectively
  • Read system info to support incident debugging

The Linux mental model

Linux consists of:

  • Kernel: manages CPU, memory, filesystems, networking, and processes
  • Userland: commands and services you interact with (shell, coreutils, systemd, etc.)

Filesystem hierarchy (high signal)

Common paths you’ll see in production:

  • /etc — configuration files
  • /var — variable data (logs, caches)
  • /home — user home directories
  • /opt — optional/third-party software
  • /usr — binaries and libraries
  • /proc — live kernel/system info (virtual files)

Processes: how Linux thinks

  • A process is a running program.
  • Each process has:
    • PID (process id)
    • environment variables
    • open files (important for debugging)
  • You manage processes via commands like ps, top, kill, nice, renice.

Users, groups, permissions

Linux permission system includes:

  • owner and group
  • permissions: read/write/execute for owner/group/others

Common operations:

  • chmod — permissions
  • chown — owner/group
  • umask — default permission mask for new files

Next steps

Continue with:

  • Processes & troubleshooting
  • Networking basics
  • Shell scripting patterns

Frequently Asked Questions

What’s the difference between a distro and the Linux kernel?
The kernel is the core; a distribution (distro) packages the kernel plus utilities, system configuration, and package management.
Why do Linux permissions matter in DevOps?
Because deployments, CI runners, and services run under specific users—permissions determine whether apps can read configs, bind ports, write logs, and access volumes.