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
What is Debian?
- Selecting the appropriate Debian version
- Debian support and assistance resources
- The Debian community
Console fundamentals
- Understanding the shell prompt
- The shell prompt within X
- The root account and root shell prompt (using su, sudo, and running programs as root under X)
- Graphical system administration tools
- Virtual consoles
- Exiting the command prompt
- Shutting down the system
- Recovering a functional console
- Recommended additional packages for beginners
- Creating an additional user account
- Configuring sudo
The file system
- File system permissions
- Controlling permissions for new files: umask
- Group permissions for sets of users
- 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 tricks in MC
- The internal editor in MC
- The internal viewer in MC
- Auto-start features of MC
- MC's FTP virtual file system
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
Simple 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
- Command aliases
Unix-like text processing
- Unix text tools
- Regular expressions
- Replacement expressions
- Global substitution with regular expressions
- Extracting data from text file tables
- Script snippets for piping commands
Debian package management
Debian package management prerequisites
- Package configuration
- Essential precautions
- Managing ongoing upgrades
- Basics of the Debian archive
- Package dependencies
- The event flow of package management
- Initial response to package management issues
Basic package management operations
- Comparing apt-get/apt-cache with aptitude
- Basic package management operations via the command line
- Interactive use of aptitude
- Key bindings of aptitude
- Package views under aptitude
- Search method options with aptitude
- The aptitude regex formula
- Dependency resolution in aptitude
- Package activity logs
Examples of aptitude operations
- Listing packages with regex matching on package names
- Browsing with regex matching
- Purging removed packages permanently
- Adjusting auto/manual install status
- Performing a system-wide upgrade
Advanced package management operations
- Advanced package management operations via command line
- Verifying installed package files
- Safeguards for package problems
- Searching package metadata
Debian package management internals
- Archive metadata
- Top-level "Release" file and authenticity
- Archive-level "Release" files
- Fetching metadata for packages
- Package state for APT
- Package state for aptitude
- Local copies of fetched packages
- Debian package file naming conventions
- The dpkg command
- The update-alternative command
- The dpkg-statoverride command
- The dpkg-divert command
Recovery from a broken system
- Incompatibility with old user configuration
- Conflicting packages with overlapping files
- Fixing broken package scripts
- Rescue using the dpkg command
- Recovering package selection data
Tips for package management
- Selecting Debian packages
- Using packages from mixed archive sources
- Adjusting candidate versions
- Updates and Backports
- Automatic downloading and upgrading of packages
- Limiting APT download bandwidth
- Emergency downgrading
- Identifying the package uploader
- The equivs package
- Porting packages to stable systems
- APT proxy server configuration
- Small public package archives
- Recording and copying system configuration
- Converting or installing alien binary packages
- Extracting packages without dpkg
- Further reading on package management
System initialisation
- An overview of the bootstrap process
- BIOS, boot loader, and mini-Debian system
- Understanding runlevels
- Configuring runlevels
- Runlevel management examples
- Default parameters for each init script
- The hostname
- The file system
- Network interface initialisation
- Network service initialisation
- System messages
- Kernel messages
- The udev system
- Kernel module initialisation
Authentication and Security
- Standard Unix authentication
- Managing account and password information
- Creating strong passwords
- Generating encrypted passwords
- PAM and NSS
- Configuration files accessed by PAM and NSS
- Modern centralised system management
- "Why GNU su does not support the wheel group"
- Stricter password rules
- Other access controls
- sudo
- SELinux, Apparmor
- Restricting access to certain server services
- Authentication security
- Secure password transmission over the Internet
- Secure Shell
- Additional security measures for the Internet
- Securing the root password
Network setup
The basic network infrastructure
- The domain name
- Hostname resolution
- Network interface naming
- LAN network address ranges
- Network device support
Modern network configuration for desktops
- GUI network configuration tools
Low-level network configuration
- Iproute2 commands
- Safe low-level network operations
Network optimisation
- Finding optimal MTU
- Setting MTU
- WAN TCP optimisation
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 server
The remote access server and utility (SSH)
- SSH basics
- Port forwarding for SMTP/POP3 tunneling
- Connecting without remote passwords
- Dealing with non-standard SSH clients
- Setting up ssh-agent
- Shutting down a remote system via SSH
- SSH troubleshooting
Other network application servers
Other network application clients
Diagnosis of 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
- Customising the X session (classic method)
- Customising the X session (new method)
- Connecting a remote X client via SSH
- Secure X terminal via 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 analyser
- Cleanly recording shell activities
- Customised display of text data
- Customised display of time and date
- Colourised shell echo
- Colourised commands
- Recording editor activities for complex repeats
- Recording graphic images of X applications
- Recording changes in configuration files
Data storage tips
- Disk partition configuration
- Accessing partitions using UUID
- File system configuration
- File system creation and integrity checks
- File system optimisation via mount options
- File system optimisation via superblock
- Hard disk optimisation
- 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
- Removable disk encryption with dm-crypt/LUKS
- Encrypted swap partition with dm-crypt
- Automatic file encryption with eCryptfs
- Automatic mounting of eCryptfs
Monitoring, controlling, and starting program activities
- Timing a process
- Setting scheduling priority
- The ps command
- 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 GUI
- Customising startup programs
- Killing a process
- Scheduling one-off tasks
- Scheduling regular tasks
- The Alt-SysRq key
System maintenance tips
- Checking who is logged into the system
- Warning all users
- Hardware identification
- Hardware configuration
- System and hardware time
- Terminal configuration
- The sound infrastructure
- Disabling the screen saver
- Disabling beep sounds
- 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 module source: Debian standard method
- Non-free hardware drivers
Virtualised systems
- Virtualisation tools
- Virtualisation workflow
- Mounting virtual disk image files
- Chroot systems
- Multiple desktop systems
Data management
Sharing, copying, and archiving
- Archive and compression tools
- Copy and synchronisation tools
- Idioms for archiving
- Idioms for copying
- Idioms for file selection
- Backup and recovery
- Backup utility suites
- An example script for system backup
- A copy 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
- Dummy files
- Erasing an entire hard disk
- Erasing unused areas of a hard disk
- Undeleting deleted but still open files
- Searching all hard links
- Hidden disk space consumption
Data security infrastructure
- Key management for GnuPG (signing and encrypting)
- The MD5 sum
Requirements
There are no specific prerequisites required to attend this course.
35 Hours