Introduction
What Linux is, an overview of common distributions, why developers use it, and how to connect to a remote server via SSH.
Filesystem Navigation
Navigate the Linux filesystem with pwd, ls, cd, and tree, and understand the standard directory hierarchy.
File Management
Create, copy, move, delete, and find files and directories with touch, mkdir, cp, mv, rm, ln, and find.
Text Processing
Read, search, and transform text files using cat, grep, sed, awk, and shell pipes and redirection.
Permissions & Ownership
Understand Linux file permissions, ownership, chmod, chown, umask, and sudo for secure server access control.
Processes & Jobs
Monitor, control, and manage Linux processes and system services using ps, top, kill, systemctl, and journalctl.
Shell Scripting Basics
Write bash scripts with variables, conditionals, loops, and command substitution to automate repetitive server tasks.
Functions & Script Patterns
Write reusable bash functions with local variables, arguments, error handling with set -e and trap, and heredocs.
Networking
Diagnose and work with Linux networking using ip, curl, wget, ss, dig, SSH config, scp, and rsync.
Package Management
Install, update, and remove software packages on Debian/Ubuntu with apt, RHEL/Fedora with dnf, and Alpine with apk.
System Administration
Administer a Linux server — disk usage, cron jobs, log management, and environment variable configuration.
Practice Project
End-to-end exercise provisioning a fresh Ubuntu VPS, securing it, deploying a Node.js app as a systemd service, and configuring log rotation.