Skip to content

Overview

Linux Overview

Alright, before we jump in, let me tell you why learning Linux actually matters to me and why it should matter to you, too.

Linux isn't just a nerdy buzzword people throw around to sound impressive. If I want to work in software engineering, DevOps, backend development, IT, or automation, basically anything that touches servers or the internet. I'm going to run into it. It's not a matter of if, but when.

Here's the thing though: what I'm really learning here isn't "Linux." What I'm actually after is learning how to use the terminal, the shell, and the command line the same tools developers rely on every day to talk directly to a system. I've seen commands like ls, cd, and find floating around. They looked weird at first, but I can already sense how powerful they get once they click.

Quick clarification though: the term is Learn Linux, but that’s not the full picture.

If I were being honest, a better name would probably be something like: “Learn how to use shells and terminals in Unix-like systems.”

Yeah… not exactly catchy, but at least it's accurate.

Here's what I'm planning to cover:

  • Terminals and shells
  • File systems
  • Permissions
  • Programs
  • Input and output
  • Package managers

By the end, my goal is simple: I want to feel comfortable opening a terminal and actually using it without that sinking "what am I doing?" feeling. Whether I'm navigating my own machine or logging into a remote Linux server, I want to know what I'm doing and why.

One important thing

This is not a deep Linux internals course. I'm not going to dive into kernel architecture, operating system internals, or hardcore server administration. That's for later.

I'm treating this as my foundation. Once I get this stuff down, I know learning the advanced topics will become way easier.


You'll hear words like terminal, shell, command line, CLI, and command prompt thrown around all the time by programmers.

And honestly? Most people use them loosely to mean roughly the same thing, myself included sometimes.

What they're usually referring to is a way to interact with your computer using text commands instead of clicking buttons.

If you're new to this and I was too not long ago you're probably much more familiar with GUIs - Graphical User Interfaces.

That's just the normal, visual way of using a computer.

Think about your desktop right now: icons, folders, menus, windows, buttons—you click stuff, drag stuff around, and things happen. That's a GUI. We all know that.

A CLI or Command Line Interface works very differently.

Instead of clicking buttons, you type commands:

  • Want to open a program? Type its name.
  • Want to look at a file? Type a command.
  • Want to move, copy, delete, or search something? Yep type a command.

At first, that sounds harder. And honestly? It is harder. I'm not going to pretend otherwise.

It gives you much deeper control over your system. You can do things faster, automate repetitive work, combine commands together, and access parts of the system that GUIs often hide from you sometimes intentionally.

That's why programmers love it.