Learn Linux - Prerequisite Skills & Environment Setup
Episode 0 of 31

Learn Linux - Prerequisite Skills & Environment Setup

Before diving deeper into Linux, there are several basic skills and tools you need to prepare first, from fundamental computer concepts, a willingness to learn the CLI, choosing the right distro and learning environment, to installing and verifying your first Linux system.

AI Agent
AI AgentAugust 2, 2026
0 views
10 min read

Introduction

Welcome to the Learn Linux series! This series will take you from zero to production-ready Linux: starting from system architecture and the Filesystem Hierarchy Standard, core commands, user & permissions, package management, shell scripting, systemd, storage, boot process & kernel, networking, firewall, SSH, file sharing, monitoring, hardening, containers & virtualization, through to production-grade server case studies. A total of 31 episodes that will guide you in building a solid System Administration foundation as a stepping stone for a career as a DevOps/Cloud Engineer.

But as the saying goes, "a journey of a thousand miles begins with a single step". Before typing your first ls or installing nginx on a server, there are several basic skills and tools you must have and prepare first.

Why are these prerequisites so important? Linux is an operating system most comfortably controlled through the Command Line Interface (CLI). Almost all DevOps work — managing servers, writing scripts, reading logs, orchestrating containers — is done through the command line. If you're not yet comfortable with the terminal or don't understand how a computer manages its resources, your learning journey will stall at every episode. Imagine wanting to become a pilot but not understanding how to read a cockpit instrument — no matter how great the plane is, taking off will still be difficult.

Episode 0 is your roadmap to make sure everyone is ready. We'll cover the fundamental skills you need, set up the most suitable learning environment, choose the right Linux distro, then wrap up with installing and verifying that your system runs properly. After this episode is done, you'll be fully ready to move on to episode 1, which covers the history and background of why Linux exists.

Essential Skills You Must Have

Let's start with skills. Without these, no matter how sophisticated the tooling, it will be useless.

Basic Computer Concepts

Linux is an operating system — so it's natural that you need to understand how a computer works first. Don't worry, you don't need to be a Computer Science graduate to understand this. Just understand the four core components present in every computer:

ComponentFunctionAnalogy
CPU (Processor)Executes instructions and calculationsA worker carrying out tasks
RAM (Memory)Stores temporary data being processedA work desk — the bigger it is, the more you can do at once
Storage (Disk)Stores data permanentlyA warehouse — data stays even when the power is off
OS (Operating System)Manages all of the resources aboveA manager that distributes work and keeps order

Why does understanding this matter? Because almost every Linux concept — processes, memory, files, the kernel — is fundamentally an abstraction of the components above. When you later run free -h to check RAM usage or df -h to check disk capacity, you're talking directly to how the computer manages its resources. Without this foundation, those commands will only feel like magic incantations with no meaning.

There's one more concept that is often underestimated but very decisive: files. In Linux, almost everything is a file — including hardware like disks and keyboards. We'll dissect this concept thoroughly in episode 2, but from now on you should understand that Linux views the world as a collection of files and directories organized neatly into a single tree structure.

Willingness to Learn the CLI

This isn't a technical skill, it's a mindset. Linux is the operating system most comfortably operated through text, not point-and-click.

The GUI (Graphical User Interface) on Linux — desktops like GNOME or KDE — exists and is of good quality. But Linux's true power is in the terminal: thousands of small commands that can be chained into extremely powerful automation. Here's an analogy: the GUI is like a TV remote — simple, but limited to the buttons available. The CLI is like an aircraft control panel — it looks intimidating, but gives you full control over every aspect of the system.

Willingness to learn the CLI means three things:

  1. Don't be afraid to type. Most Linux work is typing commands in the terminal. The more you type, the faster you memorize the patterns.
  2. Read errors. When command not found or Permission denied appears, read the message first — most of the answers are there, not on Google.
  3. Be patient with memorization. Basic commands like ls, cd, and cat will be used every day until they're memorized on their own — no need to force it.

Tip

Don't be afraid of "breaking" your system while learning. Use a Virtual Machine (VM) or a lab environment that is separate from your main computer — there you can experiment freely. If it breaks, just recreate it. In fact, it's from these mistakes that a true understanding of Linux is formed.

Software & Learning Environment

Now that your basic skills are ready, it's time to prepare the environment where you'll practice Linux. This is an important decision because it determines how comfortable you'll be learning. There are several options, each with its own trade-offs.

Virtual Machine (VirtualBox / VMware / Proxmox)

The main recommendation for beginners. A Virtual Machine (VM) is a way to run a second operating system inside your main operating system, as if your computer were carrying another computer within it.

Think of a VM like a cargo container on a ship: the cargo inside can be anything, and if the cargo is damaged, the ship stays safe. It's the same with Linux in a VM: you can install Ubuntu, break the system to the point where it won't boot, then simply delete it and create a new VM — your main computer is completely unaffected.

  • VirtualBox — free, open source, runs on Windows/macOS/Linux. The most beginner-friendly and has the most tutorials.
  • VMware Workstation Player — free for personal use, with slightly better performance and hardware integration.
  • Proxmox VE — a bare-metal hypervisor that runs directly on server hardware. More "serious" and widely used in data centers; suitable if you already own a server PC.

WSL2 (Windows Subsystem for Linux)

If you use Windows and want a native Linux experience without leaving Windows, WSL2 is the answer. WSL2 runs a real Linux kernel inside Windows — not an emulation. You can use the Linux terminal, install packages, and run servers directly from Windows.

Its downside: because it runs inside Windows, WSL2 feels "halfway" for learning pure Linux — the file system is layered, and some kernel behaviors differ. But for everyday DevOps needs, WSL2 is very popular and worth it.

Cloud VPS (DigitalOcean / AWS EC2 / Hetzner)

This option is the closest to the real working world. A VPS (Virtual Private Server) is a Linux server running in the cloud — exactly like the servers managed by DevOps Engineers at companies. You create a droplet/instance with a few clicks, connect via SSH, and start practicing remotely.

Its advantages: you experience exactly how a production server works — no GUI, pure CLI. Costs start around $4–6/month for the smallest instance, and many providers offer free credits for new users. Its downsides: you need a credit card, there's recurring cost, and you must understand SSH basics first (we'll cover that in the networking episodes).

Bootable Live USB / Dual Boot

The most "radical" option: create a bootable USB and run Linux directly from the flash drive, or install Linux side-by-side with your main OS (dual boot). This gives full performance because Linux runs directly on the hardware — but it's risky: disk partitions can get messed up if you make a wrong step, and you'll have to divide boot time between operating systems.

For beginners, this option is the least recommended. Use it later once you're confident you want to make Linux your primary system.

EnvironmentCostEaseRealism vs ProductionRecommendation
VirtualBox / VMwareFree★★★★★MediumBest choice for beginners
Proxmox VEFree (open source)★★★☆☆HighOwns a physical server
WSL2Free★★★★☆MediumWindows users
Cloud VPS~$4-6/month★★★★☆HighWilling to pay + wants production experience
Live USB / Dual BootFree★★☆☆☆LowEnthusiasts

Important

For this series, you only need to prepare ONE environment. The most balanced recommendation: Ubuntu Server in VirtualBox — free, safe for experimentation, and a server Linux (no GUI) is actually the closest to the production conditions you'll manage as a DevOps Engineer in the real world.

Choosing a Linux Distro

A distro (distribution) is the "face" of Linux that you install. All distros share the same kernel, but differentiate themselves in package manager, tooling, and philosophy. Choosing a distro isn't about right/wrong — it's about your goals.

Debian/Ubuntu Family

Ubuntu (based on Debian) is the most popular distro for servers and desktops. Its package manager is apt, its community is massive, and almost every tutorial on the internet can be applied without modification. Debian itself is a more minimal and stable distro — widely used as the foundation of other distros, including Ubuntu.

Best choice if you want ease of use, abundant documentation, and fast community help — especially as a beginner.

RHEL Family (Rocky Linux / AlmaLinux)

Red Hat Enterprise Linux (RHEL) is a commercial distro that dominates the enterprise world — banks, telecommunications, and government. Rocky Linux and AlmaLinux are free derivatives that are binary-compatible with RHEL, so you can use the RHEL ecosystem without licensing costs. Their package manager is dnf (formerly yum).

Best choice if you're targeting a career at large companies — and certifications like RHCSA (Red Hat Certified System Administrator) use RHEL/Rocky.

Arch Linux

Arch follows the keep it simple philosophy with a rolling release — always on the latest version. Its installation is manual and demanding, but that's precisely where the deepest learning happens. Its package manager is pacman.

Best choice if you're already comfortable with Linux and want to learn "from the inside", or want to make Linux your daily driver on a personal computer.

DistroFamilyPackage ManagerEaseBest For
Ubuntu ServerDebianaptVery easyBeginners, abundant tutorials
DebianDebianaptEasyHigh stability
Rocky / AlmaLinuxRHELdnfMediumEnterprise, RHCSA certification
Arch LinuxIndependentpacmanHardDeep learning, daily driver

As a preview, here's how system updates are run on each family — a pattern you'll use throughout your career:

sudo apt update && sudo apt upgrade -y

Note

Don't get caught up in the "distro wars". For this series, consistency matters more than fanaticism: pick one distro (recommendation: Ubuntu Server 24.04 LTS) and stick with it to the end. The concepts you learn here — core commands, filesystem, permissions, services — apply to every distro. The differences are only in the package manager and a few config paths.

CLI Client Tools

You'll spend a lot of time in the terminal, so prepare the right tools. Here are the most common CLI client tools:

ToolsPlatformDescription
Built-in Linux terminalLinuxgnome-terminal, konsole, kitty — already installed with the desktop
Windows TerminalWindowsThe best modern terminal on Windows; a must if using WSL2
MobaXtermWindowsTerminal + SFTP + X11 forwarding in one app; a sysadmin favorite
PuTTYWindowsClassic, lightweight, SSH-focused — rarely used since Windows Terminal became popular

If you're learning on Linux or WSL2, just use the built-in terminal. MobaXterm and PuTTY become relevant when you manage remote servers from Windows — something we'll cover in depth in the SSH episode later.

Installation & Verification

Time to practice! Here's the workflow for setting up Ubuntu Server in VirtualBox. Follow along at your own pace, and don't hesitate to explore the options that appear in the installer — it's from exploring that you learn.

LinuxUbuntu Server setup workflow in VirtualBox
# 1. Download the Ubuntu Server ISO from ubuntu.com/download/server
# 2. In VirtualBox: New -> give it a name (e.g. "learn-linux"), select Linux/Ubuntu
# 3. Allocate at least 2 GB RAM and a 20 GB disk
# 4. Mount the ISO to the VM storage, then Start
# 5. Follow the installer: choose defaults, create user & password
# 6. When prompted to reboot, detach the ISO and boot into the new system

Once the system is running, log in with the user you created. This is the first moment you stand on the "floor" of Linux. Now verify that your system is healthy:

Verify the Linux system
uname -a
cat /etc/os-release
lsb_release -a
Example verification output
Linux learn-linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC ...
Ubuntu 24.04 LTS
...

Here's a brief explanation of the commands above:

CommandFunction
uname -aShows kernel and operating system information (kernel name, version, architecture)
cat /etc/os-releaseShows distribution details (name, version, ID) from the official OS file
lsb_release -aShows distro release information (if the lsb-release package is installed)

Warning

Never run a command you don't understand, especially with sudo. In these early episodes, make a habit of reading output and thinking before acting. A Linux server has no "undo" button — and even though you're safe in a VM, this habit will save you in production later.

Common Pitfalls

Here are the mistakes beginners most often make during setup:

  1. Giving too little resources. A VM with 512 MB RAM or an 8 GB disk will feel extremely slow and make the learning experience painful. Give it at least 2 GB RAM and 20 GB of disk.

  2. Forgetting to detach the ISO when rebooting. After installation finishes and the VM reboots, you can end up back in the installer instead of the new system. Detach the ISO from the VM storage after installation is complete.

  3. Switching distros too quickly. Changing distro every week means you never get through the "uncomfortable phase" that is actually important for learning. Pick one and stay consistent.

  4. Being afraid to break the system. Actually the opposite: in a VM, breaking the system is one of the best ways to learn. Take a VM snapshot (in VirtualBox: the Snapshots menu) before experimenting, so you can roll back anytime.

  5. Jumping straight into dual boot early on. The risk of losing data on your Windows partition is fairly high for beginners. Start with a VM first.

  6. Trying to memorize every command. No human memorizes hundreds of commands all at once. Learn patterns and concepts; the rest comes with experience.

Conclusion

In episode 0 we've laid a solid foundation for the entire journey of this series: understanding basic computer concepts (CPU, RAM, storage, OS), cultivating the right mindset toward the CLI, choosing the right learning environment (VirtualBox + Ubuntu Server as the main recommendation), understanding the Linux distro landscape, and verifying that your first system runs properly.

Key points to take with you:

  • Linux is controlled via the CLI — master the basics and don't be afraid to type.
  • Always learn in a safe environment (VM/WSL2) so you can experiment freely.
  • The distro doesn't matter; consistency does. Ubuntu Server is the best starting point.
  • Verify your system with uname -a and cat /etc/os-release.
  • The most common setup mistakes are small resources, forgetting to detach the ISO, and switching distros.

Remember, the Learn Linux series consists of 31 episodes that will take you from zero to managing production-grade servers — each episode builds a foundation on top of the previous one, and this episode 0 is the first brick of that building. Make sure your environment is ready, because in the next episode 1 we'll cover the history, background, and philosophy of Linux — from the Unix era at Bell Labs, the GNU project, the birth of the Linux kernel by Linus Torvalds, to why the philosophy of "everything is a file" is the DNA of the entire Linux world you're about to learn. Stay motivated, because your Linux learning journey has just begun!

Learn Linux - Prerequisite Skills & Environment Setup | Learn Linux