Linux Basics
Linux Commands You'll Actually Use — Part 1: The Basics
This lab teaches you practical Linux commands in the order you'd actually need them on the job. You'll work through real scenarios as if you just got SSH access to a server at work and need to figure out what's going on.
This is Part 1 of 2
Part 1 covers the foundational skills: connecting via SSH, navigating the file system, creating and manipulating files, editing files and reading logs, searching and filtering with grep and pipes, and understanding permissions. These are the commands you'll use every single day.
Part 2 (coming soon) picks up where this leaves off with processes, networking, deploying a web server, and monitoring live logs.
What This Lab Is
This is a practical, scenario-based approach to learning Linux. Every command you learn here is something IT professionals use in real environments.
The commands are ordered the way you'd actually encounter them: you SSH into a box, figure out where you are, look around, read some files, search for something specific, and then deal with permissions when something doesn't work. That's the flow of real work, and that's exactly how this lab is structured.
If you've ever stared at a Linux terminal and felt lost, this lab is designed to fix that — permanently.
What You'll Learn
- How to connect to a remote Linux server via SSH
- Navigating the file system confidently —
pwd,ls,cd, and understanding paths - Creating, copying, moving, and deleting files and directories
- Editing files with
nanoand reading logs withcat,less, andtail - Searching and filtering output using
grep, pipes, andfind - Understanding and modifying file permissions with
chmodandchown - Using
sudo— what it does, when you need it, and why it matters
Lab Environment
You'll need a Linux virtual machine to work through this lab. The specific provider doesn't matter — what matters is that you have a terminal and SSH access. Pick whichever option works best for you:
- Azure — spin up an Ubuntu VM in the free tier or with a few cents of credit
- AWS — launch a free-tier EC2 instance running Ubuntu or Amazon Linux
- Google Cloud (GCP) — create a Compute Engine instance with the free tier
- DigitalOcean — create a $4-6/month Droplet (can be destroyed after the lab)
- VirtualBox — completely free, runs locally on your machine with an Ubuntu ISO
The first step of this lab walks you through setting up your environment regardless of which provider you choose. If you already have a Linux VM or WSL instance ready, you can skip straight to navigating the file system.
Requirements
- A computer with internet access
- An SSH client (Terminal on Mac/Linux, Windows Terminal, or PuTTY on Windows)
- A cloud account (Azure, AWS, GCP, DigitalOcean) or VirtualBox installed locally
- No prior Linux experience required — just willingness to type commands and pay attention
Time, Cost, and Difficulty
- Estimated time: 1-2 hours (depending on how much you experiment)
- Estimated cost: Free to ~$2 depending on your cloud provider (VirtualBox is completely free)
- Difficulty: Beginner — no prior Linux knowledge assumed
If you're using a cloud provider, remember to delete your VM when you're done to avoid ongoing charges.
How This Lab Is Structured
Each step builds on the previous one. You'll go from "I just connected to this server" to "I can find, read, edit, search, and control access to anything on this system." Here's the progression:
- Setting Up Your Environment — spin up a Linux VM and connect via SSH
- Navigating the File System —
pwd,ls,cd, and understanding how Linux organizes files - Creating & Manipulating Files —
mkdir,touch,cp,mv,rm, and working withsudo - Editing Files & Reading Logs —
nano,cat,less,tail, and why these matter for troubleshooting - Searching & Filtering —
grep, pipes (|),find, and chaining commands together - Permissions —
chmod,chown, and understanding who can do what on a Linux system - Wrap-Up — recap, command reference, and what's next in Part 2
Key Takeaways
Linux isn't going anywhere. Whether you're managing cloud infrastructure, troubleshooting a production issue, or just trying to understand what's happening on a server — these commands are the foundation everything else is built on.
This lab gives you the hands-on confidence that reading documentation alone never will. By the end, you won't just know what these commands do — you'll know when and why to use them.