Linux Administration
Run a Linux server with confidence: users and permissions, services, packages, logs, SSH keys, bash scripts and scheduled jobs.
Leads to: Machine Learning Engineer, Cybersecurity Engineer, Database Administrator, Cloud Engineer, DevOps / Site Reliability Engineer, Data Engineer, IT Support Specialist
Before you start
This course builds on Git & the Command Line and Networking Fundamentals. Take them first if you are new to the topic.
About this course
Cloud engineers, database administrators, cybersecurity engineers and machine learning engineers all work on Linux servers that have no desktop, only a terminal. Building on Git & the Command Line and Networking Fundamentals, this intermediate course moves from using a shell to running a system. You start by setting up a safe practice system (a local virtual machine, WSL, or a free-tier cloud VM with a budget alert and a cleanup plan), learn the filesystem hierarchy, and control access with users, groups, chmod and chown. The second module covers what keeps a server running: processes and systemd services, installing and patching software with apt and dnf, and finding the cause of a failure in journald and /var/log. The last module covers remote access and automation: SSH key logins and safe hardening, a bash backup script that checks its inputs and verifies its output, and scheduling it with cron or a systemd timer. Every hands-on task runs on your own practice system, never on a work or production machine.
Course content
Module 1
The Linux System
3 lessons · 3h 37mSet up a safe practice system, find your way around the filesystem, and control access with users, groups and permissions.
- 1h 18mDistros and installing LinuxReading
Choose a Linux distribution and set up a safe practice system in a virtual machine, WSL or a free-tier cloud VM.
- 57mThe filesystem hierarchyReading
Learn what lives in /etc, /var, /usr, /home and the other top-level folders, and find any config, log or program.
- 1h 22mUsers, groups, and permissionsReading
Read rwx permissions, create users and groups, and control access with chmod and chown.
Module 2
Running Services
3 lessons · 2h 57mManage processes and systemd services, install and patch software safely, and find errors in the logs.
- 1h 12mProcesses and systemdReading
Inspect running processes with ps and top, stop them with kill, and manage services with systemctl.
- 55mPackage managementReading
Install, update and remove software safely with apt (and dnf), and understand repositories and signed packages.
- 50mLogs and journaldReading
Find the cause of an error with journalctl, /var/log and a few filtering commands.
Module 3
Automation and Access
3 lessons · 3h 38mLog in with SSH keys and harden SSH, write a bash backup script with checks, and schedule it with cron.
- 1h 15mSSH and keysReading
Log in to a Linux machine with SSH keys instead of passwords, and apply a few safe hardening settings.
- 1h 20mBash scriptingReading
Write a bash backup script that checks its inputs, stops on errors and verifies its own result.
- 1h 3mScheduling jobsReading
Schedule your backup script with cron, log its output, and know when a systemd timer is the better choice.