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 a Debian version
- Debian support resources and help
- The Debian community
Console Fundamentals
- The shell prompt
- The shell prompt within the X environment
- The root account and root shell prompt (su, sudo, running programs as root in X)
- GUI system administration tools
- Virtual consoles
- Exiting the command prompt
- Shutting down the system
- Restoring a stable console
- Recommended additional packages for beginners
- Creating an extra user account
- sudo configuration
The Filesystem
- Filesystem permissions
- Controlling permissions for newly created files: umask
- Permissions for user groups (group)
- Timestamps
- Links
- Named pipes (FIFOs)
- Sockets
- Device files
- Special device files
- procfs and sysfs
Midnight Commander (MC)
- Customising MC
- Launching MC
- File manager features in MC
- Command-line techniques in MC
- The internal editor in MC
- The internal viewer in MC
- Auto-start capabilities of MC
- MC's FTP virtual filesystem
The Basic Unix-like Work Environment
- The login shell
- Customising bash
- Special key strokes
- The pager
- Setting a default text editor
- Exiting vim
- Recording shell activities
- Basic Unix commands
The Simple Shell Command
- 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
- Command aliases
Unix-like Text Processing
- Unix text tools
- Regular expressions
- Replacement expressions
- Global substitution using regular expressions
- Extracting data from text file tables
- Script snippets for piping commands
Debian Package Management
Prerequisites for Debian Package Management
- Package configuration
- Basic precautions
- Managing continuous upgrades
- Debian archive basics
- Package dependencies
- The flow of events in package management
- Initial responses to package management issues
Basic Package Management Operations
- apt-get/apt-cache vs. aptitude
- Basic package management via the command line
- Interactive use of aptitude
- aptitude key bindings
- Package views in aptitude
- Search method options with aptitude
- The aptitude regular expression formula
- Dependency resolution in aptitude
- Package activity logs
aptitude Operation Examples
- Listing packages with regex matching on names
- Browsing with regex matching
- Completely purging removed packages
- Managing auto/manual install status
- System-wide upgrades
Advanced Package Management Operations
- Advanced package management via the command line
- Verifying installed package files
- Mitigating package problems
- Searching package metadata
Internal Mechanisms of Debian Package Management
- Archive metadata
- Top-level "Release" file and authenticity
- Archive-level "Release" files
- Fetching package metadata
- Package state for APT
- Package state for aptitude
- Local copies of fetched packages
- Debian package file naming
- The dpkg command
- The update-alternatives command
- The dpkg-statoverride command
- The dpkg-divert command
Recovering from a Broken System
- Incompatibility with legacy user configurations
- Conflicting packages with overlapping files
- Fixing broken package scripts
- Rescuing with the dpkg command
- Restoring package selection data
Package Management Tips
- Selecting the right Debian packages
- Packages from mixed archive sources
- Adjusting candidate versions
- Updates and Backports
- Automatic package download and upgrade
- Limiting download bandwidth for APT
- Emergency downgrading
- Identifying package uploaders
- The equivs package
- Porting packages to stable systems
- APT proxy servers
- Small public package archives
- Recording and copying system configurations
- Converting or installing foreign binary packages
- Extracting packages without dpkg
- Further reading on package management
System Initialization
- Overview of the bootstrapping process
- BIOS, boot loader, and mini-Debian systems
- The concept of runlevels
- Configuring runlevels
- Examples of runlevel management
- Default parameters for init scripts
- Hostnames
- The filesystem
- Network interface initialization
- Network service initialization
- System messages
- Kernel messages
- The udev system
- Kernel module initialization
Authentication and Security
- Standard Unix authentication
- Managing account and password information
- Creating strong passwords
- Generating encrypted passwords
- PAM and NSS
- Configuration files for PAM and NSS
- Modern centralized system management
- "Why GNU su does not support the wheel group"
- Strict password policies
- Other access controls
- sudo
- SELinux, AppArmor
- Restricting access to specific server services
- Authentication security
- Securing passwords over the Internet
- Secure Shell (SSH)
- Additional security measures for Internet connections
- Securing the root password
Network Setup
Basic Network Infrastructure
- Domain names
- Hostname resolution
- Network interface naming
- Network address ranges for LANs
- Network device support
Modern Network Configuration for Desktops
- GUI network configuration tools
Low-Level Network Configuration
- Iproute2 commands
- Safe low-level network operations
Network Optimization
- Finding the optimal MTU
- Setting the MTU
- WAN TCP optimization
Netfilter Infrastructure
Network Applications
The Mail System
- Basics of modern mail services
- Mail configuration strategy for workstations
Mail Transport Agent (MTA) and Mail User Agent (MUA)
- Overview of exim4
- Basic MUA - Mutt
Mail Delivery Agent (MDA) with Filters
- maildrop configuration
- procmail configuration
- Redelivering mbox contents
POP3/IMAP4 Servers
Remote Access Server and Utilities (SSH)
- SSH fundamentals
- Port forwarding for SMTP/POP3 tunneling
- Connecting without remote passwords
- Handling foreign SSH clients
- Setting up ssh-agent
- Shutting down remote systems via SSH
- Troubleshooting SSH
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 X sessions with gdm
- Customising X sessions (classic method)
- Customising X sessions (modern method)
- Connecting remote X clients via SSH
- Secure 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
- Custom text data display
- Custom time and date display
- Colourised shell echo
- Colourised commands
- Recording editor activities for complex repetitions
- Capturing graphic images of X applications
- Tracking changes in configuration files
Data Storage Tips
- Disk partition configuration
- Accessing partitions using UUIDs
- Filesystem configuration
- Filesystem creation and integrity checks
- Filesystem optimization via mount options
- Filesystem optimization via superblocks
- Hard disk optimization
- Predicting hard disk failures with SMART
- Expanding usable storage space with LVM
- Expanding usable storage space by mounting additional partitions
- 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 processes
- Scheduling priorities
- The ps command
- The top command
- Listing files opened by a process
- Tracing program activities
- Identifying processes using specific files or sockets
- Repeating commands at constant intervals
- Looping commands over files
- Starting programs from the GUI
- Customising launched programs
- Killing processes
- Scheduling one-time tasks
- Scheduling regular tasks
- Alt-SysRq key
System Maintenance Tips
- Identifying users on the system
- Warning all users
- Hardware identification
- Hardware configuration
- System and hardware time synchronization
- Terminal configuration
- Sound infrastructure
- Disabling the screen saver
- Disabling beep sounds
- Memory usage monitoring
- 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 workflows
- Mounting virtual disk image files
- Chroot systems
- Multiple desktop systems
Data Management
Sharing, Copying, and Archiving
- Archive and compression tools
- Copy and synchronization tools
- Archiving idioms
- Copying idioms
- File selection idioms
- Backup and recovery
- Backup utility suites
- System backup script examples
- Data backup copy scripts
- Removable storage devices
- Sharing data over 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 chunks
- Clearing file contents
- Dummy files
- Erasing entire hard disks
- Erasing unused areas of hard disks
- Undeleting deleted but still open files
- Searching all hard links
- Invisible disk space consumption
Data Security Infrastructure
- GnuPG key management (signing and encrypting)
- The MD5 sum
Requirements
There are no specific prerequisites or requirements needed to attend this course.
35 Hours