Wrap-Up

You just went from "I have SSH access to a server" to "I can navigate it, create files, read logs, search for anything, and control who has access to what." That's not a small thing — that covers the majority of what you do day-to-day on a Linux system in an IT role.

What We Covered in Part 1

This lab walked through Linux commands in the order you'd actually need them on the job. Not alphabetically, not randomly — in the order that matches real work.

  • Setting up your environment — spinning up a VM and connecting via SSH
  • Navigating the file system — understanding where you are and how Linux organizes everything
  • Creating and manipulating files — building directory structures, copying, moving, and deleting files
  • Editing files and reading logs — using nano to make changes and cat, less, and tail to read what's happening
  • Searching and filtering — finding exactly what you need with grep, pipes, and find
  • Permissions — controlling access with chmod and chown, and understanding what those permission strings actually mean

What You Can Do Now

After completing Part 1, you should be able to:

  • SSH into any Linux server and orient yourself immediately
  • Navigate confidently through the file system without getting lost
  • Create, copy, move, rename, and delete files and directories
  • Edit configuration files and read log files to troubleshoot issues
  • Search through files and command output to find specific information quickly
  • Chain commands together with pipes to filter and transform output
  • Understand and modify file permissions so the right people and services have the right access
  • Use sudo appropriately when you need elevated privileges

These aren't academic skills. This is what you'd use on your first day managing a Linux server at work.

Commands Reference

Here's every command covered in Part 1 with a brief description. Bookmark this or come back to it when you need a quick refresher.

CommandWhat It Does
sshConnect to a remote server over a secure shell
pwdPrint the current working directory — shows where you are
lsList files and directories in the current location
cdChange directory — move to a different location in the file system
mkdirCreate a new directory
touchCreate an empty file (or update the timestamp of an existing one)
cpCopy files or directories
mvMove or rename files and directories
rmRemove files or directories (be careful — no recycle bin)
sudoRun a command with superuser (root) privileges
nanoOpen a simple text editor in the terminal
catDisplay the entire contents of a file
lessView a file one screen at a time — great for large files
tailShow the last lines of a file — essential for watching logs
grepSearch for patterns in files or command output
| (pipe)Send the output of one command as input to another
findSearch for files by name, type, size, or other criteria
chmodChange file permissions (read, write, execute)
chownChange the owner and/or group of a file or directory

You don't need to memorize every flag for these commands. What matters is knowing they exist, understanding what they do, and being able to look up the specifics when you need them. That's how experienced admins work — they know the tools, and they check man pages or --help for the details.

What's Next in Part 2

Part 1 gave you the foundation. Part 2 is where things get more interesting — you'll move from "I can work with files" to "I can manage a running system." Here's what's coming:

  • Processes — viewing running processes, killing stuck ones, understanding what's consuming resources with ps, top, htop, and kill
  • Networking — checking IPs, testing connectivity, inspecting open ports, and basic network troubleshooting with ip, ping, curl, ss, and netstat
  • Deploying a web server — installing and configuring Nginx or Apache, serving a page, and understanding what a web server actually does under the hood
  • Monitoring live logs — watching logs in real time with tail -f, filtering live output, and understanding how to track down issues as they happen

If Part 1 is "I can use a Linux box," Part 2 is "I can run and troubleshoot services on a Linux box." That's the difference between knowing Linux and being useful with Linux.

ℹ️

Part 2 is coming soon

Part 2 of this lab is currently being built. When it's ready, it'll pick up exactly where you left off. In the meantime, the best thing you can do is practice — spin up a fresh VM and repeat these commands until they feel natural. Muscle memory matters in the terminal.

Clean Up Your Environment

If you spun up an Azure VM for this lab, delete the entire resource group now. You can always create a new one when Part 2 is available.

IMPORTANT: Delete the Entire Resource Group

  1. Go to the Azure Portal and search for Resource groups
  2. Click on rg-linux-lab (or whatever you named your resource group)
  3. Click Delete resource group at the top of the page
  4. Azure will prompt you to type the resource group name to confirm — type it exactly and click Delete
  5. Wait for the deletion to complete. This removes the VM, disk, public IP, network interface, and everything else in one shot

If you do not delete the resource group, Azure will continue to charge you — even if the VM is stopped, the disk and public IP keep accruing charges. This is your responsibility, not mine. I take no responsibility for charges you incur by leaving resources running.

You're Done with Part 1

You now have the Linux fundamentals that most people skip over or learn haphazardly. The commands in this lab are the same ones senior engineers use every day — the only difference is speed and instinct, and those come with repetition.

Keep practicing. Break things on purpose. Read error messages instead of panicking. That's how you go from "I did a lab" to "I know Linux."