Get in Touch

Course Outline

Debian Distribution

Understanding Debian

  • Selecting the appropriate Debian version
  • Debian support and resources for assistance
  • The Debian community

Fundamentals of the Console

  • Understanding the shell prompt
  • Utilizing the shell prompt within the X environment
  • Managing the root account and root shell prompt (using su, sudo, and executing programs as root in X)
  • GUI-based system administration utilities
  • Navigating virtual consoles
  • Exiting the command prompt properly
  • Properly shutting down the system
  • Restoring a functional console state
  • Recommended additional packages for beginners
  • Creating an additional user account
  • Configuring sudo

Filesystem Management

  • Filesystem permissions
  • Controlling permissions for newly created files: umask
  • Managing permissions for user groups (group)
  • Understanding timestamps
  • Working with links
  • Named pipes (FIFOs)
  • Network sockets
  • Device files
  • Special device files
  • Understanding procfs and sysfs

Mastering Midnight Commander (MC)

  • Customizing MC settings
  • Launching MC
  • Navigating the file manager within MC
  • Advanced command-line techniques in MC
  • Utilizing the built-in editor in MC
  • Utilizing the built-in viewer in MC
  • MC auto-start features
  • MC's FTP virtual filesystem capabilities

The Standard Unix-like Work Environment

  • The login shell
  • Customizing bash
  • Utilizing special key strokes
  • Using the pager
  • Setting a default text editor
  • Exiting vim effectively
  • Recording shell activity logs
  • Essential Unix commands

Basic Shell Commands

  • Command execution and environment variables
  • The "$LANG" variable
  • The "$PATH" variable
  • The "$HOME" variable
  • Command line options
  • Shell globbing
  • Command return values
  • Typical command sequences and shell redirection
  • Setting command aliases

Unix-like Text Processing

  • Essential Unix text tools
  • Regular expressions
  • Replacement expressions
  • Performing global substitutions with regular expressions
  • Extracting data from text file tables
  • Script snippets for piping commands

Debian Package Management

Prerequisites for Package Management

  • Package configuration basics
  • Essential precautions to take
  • Navigating the cycle of continuous upgrades
  • Foundations of the Debian archive
  • Understanding package dependencies
  • The lifecycle of package management operations
  • Initial responses to package management issues

Core Package Management Operations

  • Comparing apt-get/apt-cache vs. aptitude
  • Executing basic package management operations via the command line
  • Interactive usage of aptitude
  • Key bindings within aptitude
  • Navigating package views in aptitude
  • Search method options in aptitude
  • Utilizing the aptitude regex formula
  • Dependency resolution in aptitude
  • Reviewing package activity logs

Practical Examples of aptitude Operations

  • Listing packages using regex matching on package names
  • Browsing packages with regex matching
  • Completely purging removed packages
  • Managing auto/manual installation status
  • Performing a system-wide upgrade

Advanced Package Management Operations

  • Executing advanced package management tasks via the command line
  • Verifying installed package files
  • Strategies for safeguarding against package issues
  • Searching within package metadata

Internals of Debian Package Management

  • Archive metadata structure
  • The top-level "Release" file and authenticity verification
  • Archive-level "Release" files
  • Fetching metadata for packages
  • Package states in APT
  • Package states in aptitude
  • Local caching of fetched packages
  • Debian package file naming conventions
  • Utilizing the dpkg command
  • Using the update-alternative command
  • Using the dpkg-statoverride command
  • Using the dpkg-divert command

Recovering from a Broken System

  • Handling incompatibilities with old user configurations
  • Managing different packages with overlapping files
  • Repairing broken package scripts
  • Rescuing systems using the dpkg command
  • Restoring package selection data

Tips for Effective Package Management

  • Selecting appropriate Debian packages
  • Handling packages from mixed archive sources
  • Tweaking candidate versions
  • Understanding Updates and Backports
  • Automating package downloads and upgrades
  • Limiting download bandwidth for APT
  • Emergency downgrading procedures
  • Identifying the package uploader
  • Utilizing the equivs package
  • Porting packages to the stable system
  • Configuring a proxy server for APT
  • Managing a small public package archive
  • Recording and copying system configuration
  • Converting or installing alien binary packages
  • Extracting packages without dpkg
  • Further reading for package management

System Initialization

  • Overview of the boot strap process
  • BIOS, boot loader, and the mini-Debian system
  • Understanding runlevels
  • Configuring runlevels
  • Examples of runlevel management
  • Default parameters for init scripts
  • Setting the hostname
  • Filesystem mounting
  • Network interface initialization
  • Network service initialization
  • System messages
  • Kernel messages
  • The udev system
  • Kernel module initialization

Authentication and Security

  • Standard Unix authentication methods
  • Managing account and password information
  • Establishing strong passwords
  • Creating encrypted passwords
  • Understanding PAM and NSS
  • Configuration files accessed by PAM and NSS
  • Modern centralized system management
  • Why GNU su does not support the wheel group
  • Implementing stricter password rules
  • Other access control mechanisms
  • Using sudo
  • SELinux and Apparmor
  • Restricting access to specific server services
  • Ensuring authentication security
  • Transmitting secure passwords over the Internet
  • Secure Shell (SSH)
  • Additional security measures for Internet usage
  • Securing the root password

Network Setup

Basic Network Infrastructure

  • Domain names
  • Hostname resolution
  • Network interface naming
  • LAN network address ranges
  • Network device support

Modern Network Configuration for Desktop

  • GUI network configuration tools

Low-Level Network Configuration

  • Using Iproute2 commands
  • Safe low-level network operations

Network Optimization

  • Identifying the optimal MTU
  • Setting the MTU
  • WAN TCP optimization

Netfilter Infrastructure

Network Applications

The Mail System

  • Basics of modern mail services
  • Mail configuration strategies for workstations

Mail Transport Agent (MTA) and Mail User Agent (MUA)

  • Overview of exim4
  • Basic MUA: Mutt

Mail Delivery Agent (MDA) with Filters

  • Configuring maildrop
  • Configuring procmail
  • Redelivering mbox contents

POP3/IMAP4 Servers

Remote Access Server and Utility (SSH)

  • SSH fundamentals
  • Port forwarding for SMTP/POP3 tunneling
  • Connecting without remote passwords
  • Handling incompatible SSH clients
  • Setting up ssh-agent
  • Shutting down remote systems via SSH
  • SSH troubleshooting

Other Network Application Servers

Other Network Application Clients

Diagnosing System Daemons

The X Window System

  • Setting up the desktop environment
  • The server/client relationship
  • The X server
  • Starting the X Window System
  • Starting an X session with gdm
  • Customizing the X session (classic method)
  • Customizing the X session (new method)
  • Connecting a remote X client via SSH
  • Securing X terminals over the Internet
  • X applications
  • X office applications
  • X utility applications

System Tips

The screen Program

  • Use cases for screen(1)
  • Key bindings for the screen command

Data Recording and Presentation

  • The log daemon
  • Log analyzers
  • Cleanly recording shell activities
  • Customized text data display
  • Customized display of time and date
  • Colorized shell echo
  • Colorized commands
  • Recording editor activities for complex repetitions
  • Recording the graphic image of an X application
  • Recording changes in configuration files

Data Storage Tips

  • Disk partition configuration
  • Accessing partitions using UUID
  • Filesystem configuration
  • Filesystem creation and integrity checks
  • Filesystem optimization via mount options
  • Filesystem optimization via superblock
  • Hard disk optimization
  • Using SMART to predict hard disk failure
  • Expanding usable storage space via LVM
  • Expanding usable storage space by mounting another partition
  • Expanding usable storage space using symlinks
  • Expanding usable storage space using aufs

Data Encryption Tips

  • Encrypting removable disks with dm-crypt/LUKS
  • Encrypting swap partitions with dm-crypt
  • Automatically encrypting files with eCryptfs
  • Automatically mounting eCryptfs

Monitoring, Controlling, and Starting Program Activities

  • Timing a process
  • Setting scheduling priority
  • Using the ps command
  • Using the top command
  • Listing files opened by a process
  • Tracing program activities
  • Identifying processes using files or sockets
  • Repeating a command at constant intervals
  • Repeating a command looping over files
  • Starting a program from the GUI
  • Customizing programs to be started
  • Killing a process
  • Scheduling tasks once
  • Scheduling tasks regularly
  • Using the Alt-SysRq key

System Maintenance Tips

  • Identifying who is on the system
  • Broadcasting warnings to everyone
  • Hardware identification
  • Hardware configuration
  • System and hardware time
  • Terminal configuration
  • The sound infrastructure
  • Disabling the screen saver
  • Disabling beep sounds
  • Monitoring memory usage
  • System security and integrity checks

The Kernel

  • Kernel parameters
  • Kernel headers
  • Compiling the kernel and related modules
  • Compiling the kernel source: Debian standard method
  • Compiling the module source: Debian standard method
  • Non-free hardware drivers

Virtualized Systems

  • Virtualization tools
  • Virtualization workflow
  • Mounting virtual disk image files
  • Chroot systems
  • Managing multiple desktop systems

Data Management

Sharing, Copying, and Archiving

  • Archive and compression tools
  • Copy and synchronization tools
  • Idioms for archiving
  • Idioms for copying
  • Idioms for file selection
  • Backup and recovery
  • Backup utility suites
  • Example script for system backup
  • Script for data backup
  • Removable storage devices
  • Sharing data via network
  • Archive media

Binary Data

  • Viewing and editing binary data
  • Manipulating files without mounting the disk
  • Data redundancy
  • Data file recovery and forensic analysis
  • Splitting large files into smaller ones
  • Clearing file contents
  • Creating dummy files
  • Erasing an entire hard disk
  • Erasing unused areas of a hard disk
  • Undeleting deleted but still open files
  • Searching for all hardlinks
  • Identifying invisible disk space consumption

Data Security Infrastructure

  • Key management for GnuPG (signing and encrypting)
  • MD5 sums
 35 Hours

Number of participants


Price per participant

Upcoming Courses

Related Categories