| |
| GL-120 - Linux Fundamentals |
| |
| |
| Designed to provide the essential skills needed
to be proficient at the UNIX or Linux command line.
This challenging course focuses on the fundamental
concepts and tools which make UNIX and Linux so
powerful. Students in this course commonly span
a variety of skill levels, from beginners desiring
a solid foundation in UNIX to experienced users
seeking to fill in gaps in their knowledge. The
curriculum is designed to provide hands-on experience.
Subjects focused on during this class include the
Linux filesystem and how to manipulate it; the basic
Unix and Linux notions of pipes, redirection, regular
expressions, and other tools for performing complex
tasks; the management of processes and jobs; vi,
the standard Unix editor; and the ability to construct
shell scripts to automate routine or difficult operations. |
| |
| Prerequisites |
| |
| To succeed fully in this course, students should
have a solid understanding of computing functions
|
| |
| |
| Related Courses |
| |
| After: |
| |
- GL-250: Enterprise Linux Systems Administration
- GL-275: Enterprise Linux Network Services
- GL-314: Linux Troubleshooting
- GL-510: Linux Network Security
- GL-550: Enterprise Linux Security Administration
|
| |
| Course Content |
| |
Module 1 - What is Linux?
|
|
| |
- UNIX Origins, Design Principles and Timeline
- FSF, GNU, and GPL - General Public License
- The Linux Kernel and Linux Features
- Popular uses of Linux
- What is a Distribution?
- Components of Distributions
- SLS, Slackware, Mandrake, and Debian
- Red Hat Linux Products
- SUSE Linux Products
- Specific Architectures and Roles
- Unusual Features
- Standardization
|
| |
Module 2 - Multi-User Concepts
|
|
| |
- Multi-User Concepts
- got root?
- Logging In
- Switching User Contexts
- Gathering Login Session Info
- Gathering System Info
- Getting Help
|
| |
Module 2 Lab - Login and Discovery
|
|
| |
- Login to the workstation using a virtual console
and GUI interface
- Use a variety of commands to gather information
about the current login and the other users
on the system
- Use a variety of help tools to discover more
information about the commands
- Use and explore the use of the su command
- Observe the operation differences between
su and su -
|
| |
Module 3 - The Linux Filesystem
|
|
| |
- Filesystem Hierarchy Standard
- Navigating the Filesystem
- Displaying Directory Contents
- Determining Disk Usage
- Disk Usage with Quotas
- File Ownership
- File and Directory Permissions
- File Creation Permissions
- Changing File Permissions
- SUID and SGID on files
- SGID and Sticky Bit – Directories
- User Private Group Scheme
|
| |
Module 3 Lab: Files and Directories
|
|
| |
- Login to the workstation using a virtual console
and GUI interface
- Use the various commands to navigate the directories
on the workstation
- Display the characteristics of some files
and directories
- Use df to see how much hard drive space is
being used by the filesystem(s)
- Use du to show disk usage of all files in
a certain directory
- Display, then change , the ownership of some
of the files and directories on the workstation
- Use commands to display, change, and set permissions
for the different files and directories on the
workstation
|
| |
Module 4 - Manipulating Files
|
|
| |
- Directory Manipulation
- Filesys
- File Manipulation
- File Creation and Removall
- Physical Unix File Structure
- Filesystem Links
- File extensions and content
- Displaying Files
- Previewing Files
- Searching the filesystem
- Alternate Search Method
- Producing File Statistics
|
| |
Module 4 Lab: File Managements
|
|
| |
- Explore commands that are useful when doing
file and directory management
- Use commands to display the contents of text
files
- Use find and locate to search for files
|
| |
Module 5 - Text Processing
|
|
| |
- Searching Inside Files
- The Streaming Editor
- Text Processing with Awk
- Replacing Text characters
- Text Sorting
- Duplicate Removal Utility
- Extracting Columns of Text
- Merging Multiple Files
|
| |
Module 5 Lab: Text Processing
|
|
| |
- Using Standard UNIX filters to modify and
sort text
|
| |
Module 6 - Shell Basics
|
|
| |
- Role of Command Shelll
- Communication Channels
- File Redirection
- Piping Commands Together
- Filename Matching
- Wildcard Patterns/Globbing
- Brace Expansion
- Shell/Environment Variables
- Environment Variables
- General Quoting Rules
- Nesting Commands
|
| |
Module 6 Lab: Text Processing
|
|
| |
- Use I/O redirection commands
- Use | (pipe) to chain commands
- Glob using wildcard patterns
- Configure a shell variable
- Use the export command to create an environment
variable
- Escaping shell meta-characters
- Command substitution using backquotes and
the $(command) form
|
| |
Module 7 - Regular Expressions
|
|
| |
- Regular Expression Overview
- Regular Expressions
|
| |
Module 7 Lab: Regular Expressions
|
|
| |
- Use regular expressions with grep to search
for character patterns
- Practice some advanced RegEx’s with egrep
- Use sed to perform text editing on a file
using regular expressions
|
| |
Module 8 - Archiving and Compression
|
|
| |
- Directory Archive with tar and cpio
- The compress utility
- The gzip and bzip2 compression utilities
|
| |
Module 8 Lab: Archiving and Compression
|
|
- Use archiving and compression commands
|
| |
Module 9 - Text Editing
|
|
| |
- Text editing
- Pico/GNU Nano
- Pico/Nano Interface and Commands
- Vi: Basic and Advanced Vii
- Advanced Vi Commands
- Emacs and Emacs Interface
- Basic and Advanced Emacs Commands
|
| |
Module 9 Lab: Text Editing
|
|
| |
- Use the pico or nano editor to create and
efficiently modify text files
- Use the vim editor: motion, editing
- Use the Emacs editor: motions, kill, yank,
undo, search and search-query commands
|
| |
Module 10 - Command Shells
|
|
| |
- Shells
- Identifying and Changing the Shell
- sh: Configuration Files
- sh: Script Execution
- sh: Prompts
- bash: Bourne Again Shell
- bash: Configuration Files
- bash: Command Line History, Editing and Completion
- Bash: "shortcuts"
- bash: prompt
|
| |
Module 10 Lab: UNIX Shells
|
|
| |
- Identify the current shell
- Examine symbolic links of listed shells
- Invoke shell directly and change login shell
- Explore the functions available through command
line history
- Display all aliases, create a new alias, and
remove an alias
- Add aliases to .bashrc file to make aliases
persistent across login shells and system reboots
- Customize the bash shell
- Run the Z shell
- Explore prompt options including a right hand
prompt
|
| |
Module 11 - Shell Scripting
|
|
| |
- Shell Scripting
- Example Shell Script
- Positional Parameters
- Input & Output
- Doing Math
- Comparisons with test
- Conditional Statements
- The for Loop
- The while Loop
|
| |
| |
Module 11 Lab: Shell Scripting
|
|
| |
- Create a shell script to permit "safe" deletion
of files
- Install new shell script
|
| |
Module 12 - Process Management and Job Control
|
|
| |
- What is a Process?
- Process Creation and States
- Viewing Processes
- Signals
- Tools to Send Signals
- Job Control Basics
- Jobs
- Screen
- Using screen
- Advanced Screen
|
| |
Module 12 Lab: Job Control
|
|
| |
- Create several jobs to multi-task at the shell
prompt
- Job control
- Use a "fork bomb" to create additional processes
- Use process management tools to examine the
current state of the system
- Clean up using kill, killall, pgrep and pkill
on the command line and KDE System Guard and
the Gnome System Monitor GUI programs
- Create a screen session
- Detach from your session and re-attach to
your neighbor’ screen session
- Create a split screen session
|
| |
Module 13 - Messaging
|
|
| |
- Command Line Messaging
- write, talk, and ytalk
- The mesg utility
- Internet Relay Chat
- Instant Messenger Clients
- Electronic Mail
- Sending Mail with sendmail
- Sending Email with mail
- Overview of PINE
- Sending Email with Pine
- Evolution
|
| |
Module 13 Lab: Messaging
|
|
| |
- Use mesg, write, and talk to communicate between
users
- Send mail using mail and pine
|
| |
Module 14 – The Secure Shell (SSH)
|
|
| |
- tar and cpio
- Secure Shell
- Accessing Remote Shells
- Transferring Files
- Alternative sftp Clients
- SSH Key Management
- ssh-agent
|
| |
Module 14 Lab: SSH
|
|
| |
- Establish a secure session to a remote host
using ssh
- Copy files securely from one host to another
using scp
- Generate and use RSA and DSA user keys
- Use ssh-agent to cache the decrypted private
key
|
| |
Module 15 – Managing Software
|
|
| |
- Downloading Software
- FTP, NcFTP, and lftp
- wget, lynx, and links
- Installing Software
- Installing Binary Packages – rpm
- Querying and Verifying with rpm
- Installing Debian Packages
- Compiling / Installing from Source
- Installing Source RPM Packages
|
| |
Module 15 Lab: Managing Software
|
|
| |
- Practice using the ftp, ncftp, and wget commands
to download software
- Use RPM to query the system and for information
about locally installed packages and package
files
- Install software via binary RPMs, source RPMs
and source code
|
| |
Module 16 - Printing
|
|
| |
- Linux printer sub-systems
- lpd and LPRng
- Common UNIX Printing System
- Standard Print Commands
- Format Conversion Utilities
- Ghostscript
- Enscript
- Mpage
|
| |
Module 16 Lab: Printing
|
|
| |
- Use the sed, enscript, mpage, and ps2pdf commands
to manipulate a text file and convert it into
a .pdf file
- Use acroread to view the resulting PDF file
|
| |
Module 17 – Mounting Filesystems & managing Removable
Media
|
|
| |
- Filesystems Concept Review
- Mounting Filesystems
- NFS
- SMB
- File System Table
- Automating Mounts
- Removable media
- Preparing Floppy Diskettes
- mtools Package
- mtools Commands
|
| |
Module 17 Lab: Using Removable Media And NFS Shares
|
|
| |
- Format a floppy diskette and create an ext2
filesystem on the diskette
- Mount the floppy and copy a file to it, then
unmount the floppy
- Use mtools to format a floppy
- Copy a file from the /etc directory to the
floppy
- Copy the file from the floppy to your home
directory
- Mount a remote NFS share from server1 using
the mount command
- Add an NFS entry to /etc/fstab file
- Use the mount command along with the /etc/fstab
to mount a filesystem
- Configure autofs and start the autofs service
- Mount a remote NFS share from server1 using
autofs
|
| |
Module 18 – X Window System
|
|
| |
- The X Window System
- X Modularity
- Xfree86/X.org
- Starting X
- Display Manager Concepts
- XDMCP and X Security
- Using Unix Remotely
- Customizing X Sessions
- Starting X Apps Automatically
- Window Manager Concepts
- Desktop Environments
- GNOME: Preferences, Panel, and Applications
- KDE: KDE Control Center, Panel, and Applications
|
| |
Module 18 Lab: Using X
|
|
| |
- Use xhost and xauth to permit remote connections
- Explore the relationship between X servers,
X clients, and X window managers
- Experiment with the GNOME and KDE desktops
|