Unix/Linux Administration Resources

Tools, references, and learning materials for the Unix/Linux Systems Administration course

Modified

July 1, 2025

Unix/Linux Systems Administration: Course Resources

This page contains additional resources, references, and tools to support your learning journey in Unix/Linux systems administration.

Essential Tools

Linux Distributions

Virtualization and Lab Environments

Remote Management

  • OpenSSH - Secure remote access
  • Tmux - Terminal multiplexer
  • Screen - Terminal window manager
  • Mosh - Mobile shell with roaming capabilities
  • Guacamole - Clientless remote desktop gateway

Automation and Configuration Management

  • Bash - Unix shell and command language
  • Ansible - Simple automation platform
  • Puppet - Configuration management
  • Chef - Infrastructure automation
  • Salt - Event-driven automation

Monitoring and Performance Tools

  • Nagios - System and network monitoring
  • Prometheus - Monitoring and alerting
  • Grafana - Metrics visualization
  • htop - Interactive process viewer
  • Glances - System monitoring tool
  • sysstat - Performance monitoring tools

Backup and Recovery

  • Rsync - Fast file copying tool
  • Borg - Deduplicating backup program
  • Bacula - Enterprise backup solution
  • Restic - Fast, secure, efficient backup
  • Duplicity - Encrypted bandwidth-efficient backup

Learning Resources

Books

Online Courses and Tutorials

YouTube Channels

Practice Platforms

Reference Materials

Command References

Documentation

Forums and Communities

Lab Setup Resources

Basic Lab Environment

A minimal lab environment for practicing Linux administration:

  1. Host System Requirements
    • 8GB+ RAM
    • 50GB+ free disk space
    • CPU with virtualization support
    • Virtualization software (VirtualBox, VMware)
  2. Basic Virtual Machines
    • Linux server distribution (CentOS/Rocky Linux or Ubuntu Server)
    • Minimal resource allocation: 1-2 vCPUs, 1-2GB RAM, 20GB disk
  3. Network Configuration
    • NAT networking for internet access
    • Host-only network for inter-VM communication
    • Static IP assignments for predictable addressing

Intermediate Lab Environment

For more advanced practice:

  1. Multiple Distribution Types
    • RHEL-based (CentOS/Rocky Linux)
    • Debian-based (Ubuntu Server)
    • SUSE-based (openSUSE)
  2. Server Roles
    • Authentication server (LDAP, Active Directory)
    • Web server (Apache, Nginx)
    • Database server (MySQL, PostgreSQL)
    • File server (NFS, Samba)
    • Monitoring server (Nagios, Prometheus)
  3. Network Configuration
    • Multiple subnets
    • Routing between networks
    • Firewall configuration

Advanced Lab Environment

For enterprise-like scenarios:

  1. Infrastructure Services
    • DNS server (BIND)
    • DHCP server
    • Mail server (Postfix, Dovecot)
    • Proxy server (Squid)
    • Load balancer (HAProxy)
  2. High Availability Setup
    • Clustering (Pacemaker, Corosync)
    • Redundant services
    • Shared storage (iSCSI, GlusterFS)
  3. Security Components
    • Intrusion detection (Snort, Suricata)
    • Log management (ELK Stack)
    • Certificate Authority (OpenSSL)
  4. Automation Integration
    • Configuration management (Ansible, Puppet)
    • Containerization (Docker, Podman)
    • CI/CD pipeline integration

Course-Specific Materials

Lab Guides

Detailed step-by-step guides for all course labs will be provided through the learning platform.

Cheat Sheets

  • Linux command reference
  • Bash scripting reference
  • Filesystem hierarchy
  • Systemd service management
  • Networking commands
  • User and permission management

Templates

  • Shell script templates
  • System configuration templates
  • Documentation templates
  • Service configuration files
  • Backup scripts

This resource list will be updated throughout the course. If you have suggestions for additional resources, please share them in the course forum.