Debian Linux Administration

Duration: 35 Hours (5 Days) Level: Intermediate to Advanced


Day 1: Ecosystem Fundamentals & The Shell Environment

Module 1: The Debian Philosophy and Architecture

  • Introduction to the Distribution (History, stability branches: Stable/Testing/Unstable, Social Contract).
  • Version Selection Strategy (Choosing the right release for servers vs. workstations).
  • Ecosystem Support Channels (Navigating documentation, mailing lists, Bug Tracking System, IRC/Discord communities).

Module 2: CLI Competence and Access Control

  • Terminal Fundamentals (Shell prompts, distinctions between TTY and PTY, standard input/output).
  • Privileged Access Management (The root user, su vs. sudo workflows, graphical root limitations).
  • Session Management (Virtual consoles, clean exit strategies, system power states: shutdown/reboot).
  • Emergency Access (Regaining control of a frozen console, reset, SysRq basics).
  • User Management Basics (Adding users, initial environment setup).

Module 3: Filesystem Hierarchy and Permissions

  • Navigating the VFS (Understanding the directory tree: /, /home, /var, /etc).
  • Permission Models (Standard UGO permissions, chmod, chown).
  • Default Security Contexts (Understanding and setting umask).
  • Advanced File Concepts (Hard links vs. Symbolic links, timestamps).
  • Special File Types (Named pipes/FIFOs, Unix sockets, Block vs. Character devices).
  • Virtual Filesystems (Interacting with procfs and sysfs for system state).

Module 4: TUI Productivity: Midnight Commander (MC)

  • MC Fundamentals (Installation, interface navigation, startup options).
  • File Management Operations (Copy, move, permissions, virtual FTP connection handling).
  • Built-in Tools (Internal viewer/editor, command execution within MC, sub-shell tricks).
  • Customization (Menu configuration, auto-start logic).

Day 2: Advanced Shell, Text Processing & Package Management

Module 5: Shell Customization and Workflow

  • Environment Configuration (Login vs. non-login shells, .bashrc, .profile).
  • Variable Management ($PATH, $HOME, $LANG, and their impact on execution).
  • Command Line Efficiency (Aliases, history expansion, tab completion, key bindings).
  • Editor Proficiency (Setting default editors, basic vim survival and exit strategies).
  • Session Recording (Using script to log terminal output).

Module 6: Advanced Command Execution & Text Processing

  • Stream Redirection (Piping |, standard error redirection 2>, return codes $?).
  • Globbing and Wildcards (Matching file patterns).
  • Text Manipulation Tools (Introduction to grep, sed, awk, cut).
  • Regular Expressions (Regex syntax, global substitution, data extraction patterns).
  • Scripting Basics (One-liners for batch processing and table extraction).

Module 7: Software Lifecycle Management (APT Ecosystem)

  • Package Management Logic (Repositories, sources.list, dependency resolution graphs).
  • High-Level Tools (apt-get vs. aptitude: interactive modes, search patterns, regex filters).
  • Operational Workflows (Updating, upgrading, installing, purging configs).
  • Maintenance & Troubleshooting (Fixing broken dependencies, tidying orphan packages, log analysis).
  • Release Management (Performing system-wide distribution upgrades).

Day 3: System Internals, Boot Process & Storage

Module 8: Low-Level Package Internals

  • The DPKG Backend (Direct .deb manipulation, file verification, installation without APT).
  • Metadata & Integrity (GPG signing, Release files, checksums, package state flags).
  • Advanced Configuration (update-alternatives for software versions, dpkg-divert, dpkg-statoverride).
  • Disaster Recovery (Recovering package selection lists, fixing corrupt install scripts).
  • Repository Management (Backports, pinning versions, limiting bandwidth, proxy configuration).

Module 9: System Initialization and Service Management

  • The Boot Sequence (BIOS/UEFI -> Bootloader -> Kernel -> Init).
  • Runlevel/Target Management (Understanding runlevels, init scripts, defaulting services).
  • Hardware Initialization (Kernel modules, udev device management, kernel messages dmesg).
  • System Identity (Hostname configuration, locale settings).

Module 10: Storage Management & Data Security

  • Partitioning Strategies (UUIDs, filesystems types, integrity checks fsck).
  • Volume Management (Extending storage via LVM, mounting options, superblock tuning).
  • Disk Health (SMART monitoring, predicting failures).
  • Encryption (LUKS/dm-crypt for partitions, eCryptfs for directories/swap).
  • Optimization (Using aufs, symlinking strategies for space management).

Day 4: Networking, Security & Infrastructure

Module 11: Network Configuration & Optimization

  • Network Stack Basics (Interfaces, IP addressing, DNS resolution).
  • Configuration Tools (GUI tools vs. iproute2 suite, ifup/ifdown).
  • Optimization & Tuning (MTU discovery and setting, TCP window scaling, basic Netfilter/IPTables logic).

Module 12: Network Applications & Services

  • Remote Administration (SSH) (Key management, ssh-agent, tunneling/port forwarding, config troubleshooting).
  • Email Infrastructure (MTA vs MUA, Exim4 overview, Mutt client, Procmail/Maildrop filtering).
  • Protocol Clients (POP3/IMAP implementations, interactions with alien clients).

Module 13: Security & Authentication

  • User Security (Password aging, strict policies, encrypted hashes).
  • Authentication Subsystems (PAM and NSS configuration and workflow).
  • Access Control (Sudoers configuration, introduction to MAC: SELinux/AppArmor).
  • Network Security (Securing SSH, root login restrictions, firewalling services).

Module 14: The Graphical Subsystem (X11)

  • X Architecture (Server/Client model, network transparency).
  • Session Management (Display Managers gdm, starting sessions, environment variables).
  • Remote Graphics (X over SSH, X terminals).
  • Desktop Applications (Office suites, utilities, and lightweight alternatives).

Day 5: Maintenance, Virtualization & Data Integrity

Module 15: Process Management & Monitoring

  • Process Control (PS, TOP, signaling/killing processes, priority nice/renice).
  • Job Scheduling (cron for recurring tasks, at for one-time jobs).
  • System Visibility (Tracing syscalls, listing open files with lsof).
  • Logging (Syslog daemon, log rotation, analyzing logs with regex).

Module 16: Kernel & Hardware

  • Kernel Compilation (Debian-way compilation, headers, patching).
  • Module Management (Compiling external modules, proprietary drivers).
  • Virtualization (Overview of tools, working with disk images, chroot environments).

Module 17: Data Management & Recovery

  • Backup Strategies (Archive tools: tar/gzip/bzip2, rsync for synchronization).
  • Binary Analysis (Viewing/editing binary files, handling raw data).
  • Forensics & Recovery (Undeleting files, analyzing file headers, secure deletion/wiping).
  • Cryptography (GPG key management, signing, verifying file integrity with MD5/SHA).

Module 18: Advanced Maintenance Tips

  • Terminal Multiplexing (Deep dive into screen: detach/attach sessions, split screens).
  • System Audit (Hardware identification, memory usage analysis, sound subsystem config).
  • Legacy Support (Converting alien packages with alien, extracting without installing).