Stage 1 of 7 · 10 lessons · ~3 months
Linux, the shell and scripting
Everything in DevOps runs on Linux and is driven from a terminal. Get fluent with the shell, basic administration and Bash before touching any cloud.
Start: The filesystem, files and permissionsLessons· one lesson for each topic, in this order
- 1The filesystem, files and permissionsLesson
- 2Users, groups and sudoLesson
- 3Processes and signalsLesson
- 4Services with systemdLesson
- 5Packages and system logsLesson
- 6Pipes, grep, sed and awkLesson
- 7Writing Bash scriptsLesson
- 8Scheduling with cron and systemd timersLesson
- 9SSH keys and remote accessLesson
- 10Git for scripts and configurationLesson
Start with· follow one of these
- CourseFreeThe Missing Semester of Your CS Education
MIT · Beginner
Shell, scripting, data wrangling, SSH and Git in a dozen focused lectures
- BookFreeThe Linux Command Line
William Shotts · Beginner
Free book: permissions, processes, packages and longer shell scripts, chapter by chapter
Practise
Keep handy
Also worth your time
Before moving on: Set up a fresh Ubuntu virtual machine, create users with the right permissions, and schedule a Bash script with cron that backs up a directory and reports disk usage, all kept in a Git repository.

Use Linux as your daily environment for this stage, a VM or WSL is fine, because reading about the shell does not stick. Write Bash for anything short and switch to Python the moment a script needs real error handling or data structures.