1. 'Just For Fun'
- Linux? Why?
- Hardware, software, operating system...
- UNIX Market and place for Linux within it
- OSS (Open Source Software) principles
- GNU GPL, Linux philosophy and distributors
- Linux for networking and developers
- Introduction to objectives and coverage
2. Linux Session
- Gaining access to the system
- Ordinary users vs. the superuser
- Login process, shells and line interpreters
- Command line structure, control and examples
- Simple system interrogation utilities
- Simple file reading utilities
- File system layout and navigation
- System and user directories
- Using filenames with absolute and relative pathnames
- Getting help
3. Using Files and Directories
- File system - the user's perspective
- Directory structure
- FSH standard
- File and directory manipulation commands
- Copy, move, remove, etc
- File system - the system's perspective
- I-nodes and file attributes
- Hard links and symbolic links
4. Editing Text
- Operational modes of vi
- Command mode vs. Insert mode
- 'Colon', or 'ex' mode
- Useful vi commands
- Navigation and editing command
- Search and substitute
- Extended vi commands and vim configuration
- Alternative editors
- GUI and text choices
5. BASH - Your Interpreter
- Shell as Interpreter and command line scan
- Generating filenames with wildcards (globbing)
- Quoting (protecting special characters from the shell)
- Variable and command substitutions
- Protecting special characters for the shell
- Bash Command History
- Bash Command Line Editing
6. BASH Environment
- Shell definitions
- Creating, recalling and sharing shell variables
- Shell aliases and functions
- Character sets and localisation
- Bash variables to control these
- Controlling shell behaviour with set -o and shopt
- Interactive Start-up Files
- Start-up files for login and non-login shells
7. Who is the Boss
- The su command
- su interactive session
- Running one-off commands
- Checking who you are
- Understanding id and who am i tools
- The sudo tool
- Typical sudo session
- sudo configuration file
8. Processes
- What is a Process?
- How a process starts
- How a process ends
- The kill command and signals
- Command exit status
- Identifying Processes
- ps, top and GUI process monitors
9. Job Control
- Background jobs
- One-off deferral with at
- Daemon and job manipulation
- User access configuration files
- Spool directory
- Scheduling repeated tasks with crontab
- The cron daemon and configuration tables
- User access configuration files
10. Data Streams
- Standard data streams
- Standard output stream (stdout)
- Standard error stream (stderr)
- Standard input (stdin)
- Redirecting streams
- Redirecting standard output, error and input
- Synchronising (merging) streams
- Other methods of handling data streams
- Collecting data with sub-shells
- Using command substitution
11. Pipes and Filters
- Sending stdout to a process
- Pipes
- Multistage Pipes
- Simple Filters
- Why Use Filters?
- Problem Solving Approach
- The cut, sort, uniq, grep and tr commands
- Filter Examples
12. Basic Regular Expressions (and SED)
- Regular expressions
- What is sed
- Specifying simple instructions
- Understanding sed addressing
- Using a sed command file
- More sed editing commands
13. File Management Tools
- Using PATH to identify command origins
- The which and type commands
- Locating files
- The locate command and mlocate database
- Identifying filenames with find
- Specifying search criteria and requesting actions
- Backups with cpio, and dd and tar
- Compression tools
14. Filesystem Access
- Files, directories and filesystems
- File and directory access
- Read/write/execute permissions
- User types
- Additional permission bits
- Set user/group ID bits and sticky bit
- Using chmod, chown and chgrp to manipulate access attributes
15. Working in a Network Environment
- Basic network card configuration
- Using ifconfig tool
- GUI configuration programs exist
- Basic routing configuration
- Using route commands
- Network diagnostics
- With ping, traceroute and netstat
- Using ssh for remote shell logins
16. X Window System
- X Window System as Linux GUI Interface
- Origins and implementation
- X Window System Architecture
- Client-server communication
- Setting display access rights
- Selecting destination display
- Window managers / desktop systems
- Gnome, KDE and more…
- X Window resources
- Fonts, colours, geometry
17. Writing Shell Scripts
- Simple scripts
- Positional parameters
- Command exit status
- Selection commands
- Looping commands
- Interactive input