DEV Community

Cover image for From "What's a Kernel?" to Actually Using the Terminal — My Linux Week 1 (Chapters 1–3)
The Duchess of Hackers
The Duchess of Hackers

Posted on

From "What's a Kernel?" to Actually Using the Terminal — My Linux Week 1 (Chapters 1–3)

I've been going through Linux Essentials as part of Akwannya Hub's Skill Pods, and this is a write-up of what stuck from chapters 1–3: understanding Linux, the terminal, package management, security, and virtualization.

1. Linux is a kernel, not an OS

The first thing that reframed everything for me: Linux itself is just the kernel — the core layer that talks to hardware and manages system resources (CPU, memory, processes).

What we call "Linux" day-to-day (Ubuntu, Debian, Fedora) is actually a distribution — the kernel bundled with a package manager, utilities, and often a desktop environment.

2. GUI vs CLI, and the commands I actually used

A GUI lets you interact through windows and clicks. A CLI means typing commands directly to the shell. Servers and sysadmin work lean heavily CLI-first, since it's faster and scriptable.

Commands I practiced:

pwd     # print current working directory
ls      # list files/folders in current directory
cd      # change directory
mkdir   # create a new directory
touch   # create a new empty file
cat     # print a file's contents to stdout
Enter fullscreen mode Exit fullscreen mode

Basic, but typing them repeatedly is what made the mental model click — not just reading about them.

3. Shells and editors

The shell is the interface between the user and the kernel — it parses your commands and passes them along for execution. Bash is the default on most distros, though zsh, ksh, and tcsh exist too.

I also got introduced to terminal-based editors: nano (simple, beginner-friendly) and vim (powerful, steep learning curve). Learning at least one terminal editor is apparently non-negotiable for serious Linux/server work.

4. Package management, by distro family

Debian-based (Ubuntu, Mint, Debian itself):

apt install <package>
dpkg -i <package>.deb
Enter fullscreen mode Exit fullscreen mode

RPM-based (Fedora, RHEL, CentOS):

yum install <package>
rpm -i <package>.rpm
Enter fullscreen mode Exit fullscreen mode

The part that clicked for me: a package manager's real job isn't just "install this," it's resolving dependencies — making sure everything the software needs is present before it runs.

5. Security basics

Root has full system privileges, so managing who gets root (and how) is central to Linux security. Beyond that: strong passwords, 2FA, permissions, encryption, HTTPS, VPNs, and firewalls.

On Ubuntu specifically, UFW (Uncomplicated Firewall) handles this at the CLI, and Gufw gives it a GUI. Good security, as I learned it, is less about a single tool and more about consistent habits around access and updates.

6. Linux in the cloud, and virtualization

Cloud computing runs on servers, storage, and compute resources — deployed as public, private, community, or hybrid models. Linux dominates here because it's open-source, scalable, cost-effective, and automatable.

Virtualization ties into this: a host machine runs multiple guest VMs via a hypervisor, letting one physical machine do the work of several. This is also the conceptual root of container tech like Docker and Kubernetes — different implementation, same underlying idea of resource isolation.

Takeaways

The concepts weren't hard individually — the vocabulary density was. Kernel, shell, hypervisor, repository, dependency, distro — a lot of new terms in a short span. Breaking each one down to "what does this actually do" helped more than trying to memorize definitions.

Also: reading about Linux and using Linux are very different learning curves. Typing the commands, even the trivial ones, is what made this stick.

Chapters 4+ next. 🐧

Top comments (0)