Module 1: History and Genesis of Linux
- Understanding the root and design paradigm of Linux
- Open-source philosophy and the GNU project and Linux
- Reading: The Cathedral and the Bazaar
Module 2: Linux Distributions (Distros)
- Root Distributions
- Descendant Distributions
- Installing Distros locally and remotely
Module 3: Why Linux is Relevant to DevOps, SREs, and Data Analysis
- Dominance in Servers and Supercomputing space
- Cloud Computing and Virtualization
- Major cloud platforms (AWS, Google Cloud, Azure) use Linux extensively
- DevOps and Containerization
Module 4: Installing and Setting Up a Linux System
- Installing Linux on a virtual machine (using VirtualBox/VMware)
- Dual-booting Linux with other operating systems
- Overview of the Linux desktop environment
Exercise:
- Install Linux using WSL / virtual machine
- Install Linux on a remote server for access to the internet
- Is WSL really Linux? (Discussion)
Module 5: Exploring the Linux System
- Terminals and Shells (bash, sh, zsh, fish etc.)
- Piping and Redirection (The heart of the Linux concept)
- Finding help (man, apropos, info etc.)
- Linux file structure and the kernel
- Desktop Environments and Window Managers
- Extra Resource: AT&T UNIX archives (YouTube)
Exercise:
- Explore
man
, man -k
, apropos
- Watch AT&T archives on piping and UNIX design concept
- Demo piping and redirection
Module 6: Linux Commands
- Linux command structure
- History and recursive searches
- Basic and everyday commands
- Administration commands
- File and Directory Management
- Users and group management
Exercise:
- Explore user creations and permissions
- Watch online video on popular Linux commands
- Install
zsh
and oh-my-zsh
on your account
Module 7: Working with Files
- File editors (vim, pico, nano, Visual Studio Code, etc.)
- Configuration and run command (rc) files
Exercise:
- Explore vim through
vimtutor
- Connecting Visual Studio Code to the remote server
Module 8: System Administration
- Working with services (
systemctl
or service
) - System monitoring and performance (
top
, free
, etc.) - Disk and memory management
- Risk assessment frameworks and vulnerability prioritization techniques
- Working with processes
- Package management
- Introduction to Shell scripting
Exercise:
- Explore simple bash scripts
Module 9: Networking Essentials
- Network Topology
- IP Addresses, ports and sockets, MAC addresses
- Types of computer networks
- Private and Public IP addresses
- Network devices (bridges, switches, and hubs)
- The network OSI model layers
- Network Services (DHCP, DNS, SSH)
- Routing & Switching Basics
- Ports & Protocols (TCP/IP, UDP, HTTP, DNS)
- Firewall and Network Security
- Backup and Recovery
Exercises:
- Port usage with port 80 as an example
- Explore IP and MAC addresses
- Explore DNS name resolution
Final Project – Website/Web App Hosting on a VPS/EC2 Instance
- Create a website on a Linux instance on the internet with a domain and DNS name resolution included
- Enable SSH Access