Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Debian Distribution
Understanding Debian
- Selecting the appropriate Debian version
- Accessing Debian support and resources
- Navigating the Debian community
Console Fundamentals
- Understanding the shell prompt
- Utilizing the shell prompt within X
- Managing the root account and root shell prompt (using su, sudo, and running programs as root under X)
- Overview of GUI system administration tools
- Working with virtual consoles
- Exiting the command prompt
- Properly shutting down the system
- Restoring a functional console
- Recommended packages for newcomers
- Creating an additional user account
- Configuring sudo
Filesystem Management
- Managing filesystem permissions
- Controlling permissions for new files via umask
- Managing group permissions for users
- Understanding timestamps
- Creating and managing links
- Utilizing named pipes (FIFOs)
- Working with sockets
- Handling device files
- Accessing special device files
- Exploring procfs and sysfs
Mastering Midnight Commander (MC)
- Customizing MC settings
- Launching MC
- Utilizing the file manager in MC
- Advanced command-line techniques in MC
- Using the internal editor in MC
- Using the internal viewer in MC
- Configuring auto-start features
- Using MC's FTP virtual filesystem
Essential Unix-like Work Environment
- Understanding the login shell
- Customizing bash
- Using special key strokes
- Utilizing the pager
- Setting a default text editor
- Exiting vim
- Recording shell activities
- Executing basic Unix commands
Basic Shell Commands
- Command execution and environment variables
- Understanding the "$LANG" variable
- Configuring the "$PATH" variable
- Working with the "$HOME" variable
- Using command-line options
- Utilizing shell globbing
- Interpreting command return values
- Employing typical command sequences and shell redirection
- Creating command aliases
Unix-like Text Processing
- Using Unix text tools
- Working with regular expressions
- Using replacement expressions
- Performing global substitutions with regular expressions
- Extracting data from text file tables
- Using script snippets for piping commands
Debian Package Management
Prerequisites for Debian Package Management
- Configuring packages
- Essential precautions
- Navigating ongoing upgrades
- Understanding Debian archive basics
- Managing package dependencies
- Understanding the package management workflow
- Addressing initial package management issues
Basic Package Management Operations
- Comparing apt-get/apt-cache with aptitude
- Performing basic package management via the command line
- Using aptitude interactively
- Learning key bindings in aptitude
- Navigating package views in aptitude
- Utilizing search options in aptitude
- Understanding the aptitude regex formula
- Resolving dependencies in aptitude
- Reviewing package activity logs
Examples of aptitude Operations
- Listing packages using regex matching on names
- Browsing using regex matching
- Completely purging removed packages
- Managing auto/manual installation status
- Performing a system-wide upgrade
Advanced Package Management Operations
- Executing advanced operations via the command line
- Verifying installed package files
- Implementing safeguards against package issues
- Searching package metadata
Internals of Debian Package Management
- Understanding archive metadata
- Examining the top-level "Release" file and authenticity
- Understanding archive-level "Release" files
- Fetching package metadata
- Understanding package states for APT
- Understanding package states for aptitude
- Managing local copies of fetched packages
- Understanding Debian package file naming conventions
- Using the dpkg command
- Using the update-alternatives command
- Using the dpkg-statoverride command
- Using the dpkg-divert command
Recovering from a Broken System
- Resolving conflicts with old user configurations
- Handling overlapping files in different packages
- Fixing broken package scripts
- Using dpkg for rescue operations
- Recovering package selection data
Package Management Tips
- Selecting appropriate Debian packages
- Managing packages from mixed archive sources
- Adjusting candidate versions
- Handling updates and backports
- Automating package downloads and upgrades
- Limiting APT download bandwidth
- Performing emergency downgrades
- Identifying package uploaders
- Using the equivs package
- Porting packages to stable systems
- Configuring an APT proxy server
- Setting up a small public package archive
- Recording and copying system configurations
- Converting or installing alien binary packages
- Extracting packages without dpkg
- Recommended further reading on package management
System Initialization
- Overview of the bootstrap process
- Understanding BIOS, bootloaders, and mini-Debian systems
- Understanding runlevels
- Configuring runlevels
- Examples of runlevel management
- Default parameters for init scripts
- Managing the hostname
- Configuring the filesystem
- Initializing network interfaces
- Initializing network services
- System messages
- Kernel messages
- Understanding the udev system
- Initializing kernel modules
Authentication and Security
- Standard Unix authentication
- Managing account and password information
- Creating strong passwords
- Generating 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 policies
- Other access control methods
- Using sudo
- Using SELinux and AppArmor
- Restricting access to specific server services
- Securing authentication
- Securing passwords over the Internet
- Using Secure Shell (SSH)
- Additional security measures for Internet exposure
- Securing the root password
Network Setup
Basic Network Infrastructure
- Understanding domain names
- Hostname resolution
- Network interface naming
- Determining LAN network address ranges
- Network device support
Modern Network Configuration for Desktops
- Using GUI network configuration tools
Low-Level Network Configuration
- Using Iproute2 commands
- Safe low-level network operations
Network Optimization
- Identifying optimal MTU
- Setting MTU values
- Optimizing WAN TCP
Netfilter Infrastructure
Network Applications
Mail Systems
- Basics of modern mail services
- Mail configuration strategies for workstations
Mail Transport Agents (MTA) and Mail User Agents (MUA)
- Overview of Exim4
- Basic MUA usage: Mutt
Mail Delivery Agents (MDA) with Filtering
- Configuring maildrop
- Configuring procmail
- Redelivering mbox contents
POP3/IMAP4 Servers
Remote Access Server and Utility (SSH)
- SSH basics
- 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
- Understanding the server/client relationship
- The X server
- Starting the X Window System
- Starting X sessions with GDM
- Customizing X sessions (classic method)
- Customizing X sessions (new method)
- Connecting to 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
- Customizing text data display
- Customizing time and date display
- Colorizing shell echo outputs
- Colorizing commands
- Recording editor activities for complex repetitions
- Recording graphical images of X applications
- Recording changes in configuration files
Data Storage Tips
- Disk partition configuration
- Accessing partitions using UUIDs
- Filesystem configuration
- Creating filesystems and performing integrity checks
- Optimizing filesystems via mount options
- Optimizing filesystems via superblocks
- Hard disk optimization
- Using SMART to predict hard disk failure
- Expanding usable storage space via LVM
- Expanding usable storage space by mounting additional partitions
- Expanding usable storage space using symbolic links
- 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 processes
- Understanding scheduling priorities
- Using the ps command
- Using the top command
- Listing files opened by a process
- Tracing program activities
- Identifying processes using files or sockets
- Repeating commands at constant intervals
- Repeating commands in loops over files
- Starting programs from the GUI
- Customizing startup programs
- Killing processes
- Scheduling one-time tasks
- Scheduling recurring tasks
- Using the Alt-SysRq key
System Maintenance Tips
- Identifying logged-in users
- Broadcasting warnings to all users
- Hardware identification
- Hardware configuration
- System and hardware time synchronization
- Terminal configuration
- Sound infrastructure setup
- 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 kernel source: Debian standard method
- Compiling module source: Debian standard method
- Non-free hardware drivers
Virtualized Systems
- Virtualization tools
- Virtualization workflow
- Mounting virtual disk image files
- Using chroot systems
- Managing multiple desktop systems
Data Management
Sharing, Copying, and Archiving
- Archive and compression tools
- Copy and synchronization tools
- Idioms for archives
- Idioms for copying
- Idioms for file selection
- Backup and recovery
- Backup utility suites
- Example script for system backup
- Script for data backup copying
- Managing removable storage devices
- Sharing data via the network
- Archive media
Binary Data
- Viewing and editing binary data
- Manipulating files without mounting disks
- 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
- Understanding invisible disk space consumption
Data Security Infrastructure
- Key management for GnuPG (signing and encrypting)
- Using MD5 sums
Requirements
There are no specific prerequisites required to attend this course.
35 Hours