Linux
Master the command line that powers servers, the cloud and most of the internet.
A complete, job-ready path through Linux and the command line, using Ubuntu/Debian with notes for Fedora and RHEL. Learn what Linux is, find your way around the shell and the filesystem, and manage files, editors, permissions, users and sudo. Then build real command-line power with find, grep and regular expressions, pipes and redirection, sed and awk, and archives. Run the system like an admin with package managers, processes and signals, systemd and journalctl, disks and logs. Finish with bash scripting, cron, networking, SSH, firewalls, performance monitoring and server hardening.
31 lessons ~7 h 40 min Beginner → Advanced
What you’ll learn
- Explain what Linux and distributions are, and work confidently in a terminal and the bash shell
- Navigate the filesystem hierarchy and create, copy, move, view and edit files with nano and vim
- Manage permissions, ownership, users, groups and sudo safely
- Find files and text with find, locate, grep and regular expressions
- Combine commands with pipes and redirection and transform text with cut, sort, uniq, sed and awk
- Install software and manage processes, signals, systemd services, logs and disks
- Write robust bash scripts with variables, conditionals, loops, functions, arguments and exit codes
- Automate tasks with cron and systemd timers
- Diagnose networks with ip, ping, ss, curl and dig, and work remotely with SSH, scp and rsync
- Monitor performance and harden a server with a firewall, SSH best practices and updates
Syllabus
6 modules · 31 lessons- 1What is Linux? Distros & getting set upThe kernel, GNU tools and distributions, and how to get Linux via WSL, a VM or the cloud. 12 min
- 2The terminal & shell basicsThe prompt, command syntax, options and arguments, man pages, history, tab completion and shortcuts. 14 min
- 3The filesystem hierarchyWhy everything starts at /, what lives in /etc, /var, /usr, /home and /proc, and "everything is a file". 12 min
- 4Navigating the filesystempwd, ls, cd, absolute vs relative paths, hidden files and tab completion. 12 min
- 5Working with files & directoriesmkdir, touch, cp, mv, rm, wildcards and brace expansion, and how to avoid deleting the wrong thing. 15 min
- 6Viewing files: cat, less, head & tailRead files of any size, follow logs live with tail -f, and inspect files with wc, file and stat. 12 min
- 7Text editors: nano & vim basicsEdit config files with nano, survive and thrive in vim, and set your default editor. 15 min
- 8Permissions & ownershiprwx for user, group and others, chmod in symbolic and octal form, chown, umask and special bits. 16 min
- 9Users, groups & sudo/etc/passwd and /etc/group, useradd, usermod, passwd, groups and using sudo safely. 15 min
- 10Hard links & symbolic linksInodes, ln and ln -s, when to use each, and how broken links happen. 10 min
- 11Finding files: find, locate & whichSearch by name, type, size, time and owner, act on results with -exec, and find commands on your PATH. 14 min
- 12grep & regular expressionsSearch text with grep, its most useful options, and basic and extended regular expressions. 16 min
- 13Pipes & redirectionstdin, stdout and stderr, >, >>, 2>&1, pipes, tee, xargs and command substitution. 15 min
- 14Text processing: cut, sort, uniq, tr & moreSlice, sort, count, translate and join text, and build data pipelines from small tools. 15 min
- 15sed & awkFind-and-replace and in-place edits with sed; fields, patterns and reports with awk. 18 min
- 16Archives & compressiontar, gzip, xz, zstd and zip: create, list, extract and choose the right format. 12 min
- 17Environment variables & shell configurationShell vs environment variables, PATH, export, .bashrc vs .profile, aliases and a better prompt. 14 min
- 18Package management: apt, dnf & snapInstall, update and remove software, manage repositories, and use dpkg, rpm, Snap and Flatpak. 15 min
- 19Processes, signals & jobsps, pgrep, top, signals and kill, nice, and foreground/background job control. 15 min
- 20systemd services & journalctlsystemctl start/stop/enable, writing your own unit file, and reading logs with journalctl. 17 min
- 21Disks & storagedf, du, lsblk, partitions, filesystems, mount and /etc/fstab, and finding what fills a disk. 16 min
- 22Logs & log managementWhere logs live, reading /var/log and the journal, searching logs, and rotating them with logrotate. 13 min
- 23Bash scripting basicsShebang, variables, quoting, arguments, reading input, arithmetic and exit codes. 17 min
- 24Conditionals & loops in bashif, test and [[ ]], file tests, case, for, while and until loops, and reading files line by line. 17 min
- 25Functions & robust scriptsFunctions, local variables, arrays, set -euo pipefail, trap, getopts and ShellCheck. 18 min
- 26Scheduling: cron & systemd timerscrontab syntax, environment gotchas, logging cron jobs, and systemd timers as a modern alternative. 14 min
- 27Networking commandsIP addresses and ports, ip, ping, ss, curl, dig, traceroute and a troubleshooting checklist. 18 min
- 28SSH, keys, scp & rsyncConnect securely, set up key-based login, use ~/.ssh/config and tunnels, and copy files with scp and rsync. 18 min
- 29Firewalls with ufwDefault-deny policies, allowing services and ports, rate limiting, and firewalld on Fedora/RHEL. 12 min
- 30Performance monitoringLoad average, top and htop, free, vmstat, iostat, and finding CPU, memory, disk and network bottlenecks. 16 min
- 31Security basics & server hardeningUpdates, least privilege, SSH hardening, firewalls, fail2ban, auditing and a hardening checklist. 17 min