Here's a 2-week Linux fundamentals lesson plan for your course, designed for students with beginner to intermediate knowledge. The plan spans 3-hour sessions on Monday, Wednesday, and Thursday, and 5-hour sessions on Saturdays, focusing on command-line mastery and practical sysadmin skills.

📅 Week 1 Overview: Foundations & Core Utilities

Monday (3 hrs) – Intro & Navigation Essentials

  • Linux Shells & Prompt Basics
    • What is a shell? (bash, zsh)
    • Shell configuration files (.bashrc, .bash_profile)
  • Basic Navigation & Info Commands
    • pwd, cd, ls, tree, file, echo, whoami, id, hostname
  • File & Directory Management
    • mkdir, touch, rm, rmdir, mv, cp, stat, basename, dirname
  • Hands-on: Create directories and explore the filesystem hierarchy

Wednesday (3 hrs) – File Discovery & Text Searching

  • Powerful File Searching
    • find, locate, which, type
  • Working with Text
    • cat, less, more, head, tail
    • grep, egrep, cut, wc, sort, uniq, strings
  • Hands-on: Search for logs, analyze large files, extract columns

Thursday (3 hrs) – Installing Software & File Permissions

  • Package Management
    • dnf, rpm, yum, apt (brief comparison for distro awareness)
    • Installing, removing, searching packages
  • Permissions & Ownership
    • ls -l, chmod, chown, chgrp, umask
  • Hands-on: Install htop, change permissions on created files

Saturday (5 hrs) – Processes, Bash & Text Editors

  • Process Management
    • ps, top, htop, kill, pkill, nice, renice, jobs, fg, bg
  • Bash Scripting Basics
    • echo, read, if, for, while, case, variables
    • Shebang and script permissions
  • Text Editing
    • nano, vim intro (optional: micro, gedit)
  • Hands-on: Write a simple script that checks disk space and sends a message

📅 Week 2 Overview: System Admin, Networking, Scheduling

Monday (3 hrs) – User & Group Management

  • User Commands
    • useradd, passwd, usermod, userdel
    • groupadd, groupmod, groups, gpasswd, chage
  • Account Info Tools
    • /etc/passwd, /etc/shadow, /etc/group
    • id, who, w, last, finger
  • Hands-on: Create a new user, add to a group, set password policies

Wednesday (3 hrs) – Job Scheduling & Crons

  • One-time Jobs
    • at, atq, atrm
  • Recurring Jobs
    • crontab, crontab -e, /etc/cron.*
    • Time syntax, logging cron output
  • Timers Overview (brief mention of systemd timers)
  • Hands-on: Schedule uptime reporting script via cron

Thursday (3 hrs) – Networking Essentials

  • IP and Interface Commands
    • ip a, ip r, ip link, ip neigh, nmcli, ethtool
  • Troubleshooting Tools
    • ping, traceroute, dig, nslookup, host, curl, wget, netstat, ss
  • Hands-on: Trace route to a domain, get public IP, check DNS resolution

Saturday (5 hrs) – Services, Firewalld & System Control

  • Startup & Shutdown
    • shutdown, reboot, poweroff, systemctl isolate
  • Systemd Services
    • systemctl, journalctl, systemctl enable/start/stop/status
    • Custom service unit file basics
  • Firewall Management
    • firewalld basics, firewall-cmd permanent vs runtime
    • Adding/removing services and ports
  • Final Hands-on:
    • Create a script to log uptime every hour
    • Open a port and create a service to run a background job

🧰 Additional Commands Covered Throughout

  • df, du, mount, umount, lsblk, blkid, free, uptime, history, alias, env, export, xargs, tee, yes, bc, sleep, time, basename, uname, whoami, stat, lsof, basename, dirname, watch, yes, diff, cmp
>