Linux From Basics to Proficiency
Learn Linux through the command line for developers and DevOps: the filesystem, permissions, processes, pipes/redirection, package management, users, networking, systemd, shell scripting. Practice right inside a Linux container, with deep dives into how the system works.
Users, Groups and sudo
Linux is multi-user by design. This article explains where users and groups are stored (/etc/passwd, /etc/shadow, /etc/group), how to create and manage them, and why you should use sudo instead of logging in directly as root.
Basic Networking on Linux
View IP addresses and routing (ip), check which ports are listening (ss), test connections (ping, curl), and understand name resolution (DNS, /etc/hosts). Enough to diagnose most networking issues on a server.
SSH and File Transfer: ssh, scp, rsync
How you actually get into a remote Linux server: SSH with key authentication (safer than passwords), a handy config file, and transferring files with scp and rsync. A foundational skill for everything you do on a server.
systemd and Services
systemd is the init system that controls every service on modern Linux. Learn systemctl to start/stop/restart services, have them auto-start at boot, write your own unit files, and view logs with journalctl.
Shell Scripting: Automating with Bash
Combine commands into scripts so you don't retype them and can automate your work. Learn the shebang, variables, parameters, conditionals, loops, functions, exit codes, and safe-scripting habits like set -euo pipefail.
Cron and Scheduled Tasks
Have commands and scripts run on a schedule — nightly backups, weekly log cleanup. Learn crontab syntax, the common pitfalls (PATH, environment), at for one-off jobs, and a wrap-up of the whole Linux series.