These classnotes are depreciated. As of 2005, I no longer teach the classes. Notes will remain online for legacy purposes


Classnotes | RecentChanges | Preferences

Instructor: Sam Hart (

The general homepage for this course is

This course will introduce the student to the fundamentals of the Unix operating environment, within the context of using Red Hat Linux. Students will acquire understanding of basic Unix concepts, and will have extensive hands-on experience with the "shell", which is the command-line environment common to all Unix implementations. The class will focus on giving the student the ability to function as a knowledgeable user in the Unix environment. This course will also teach skills critical to acting as a systems or network administrator. Students who bring a computer to class can have Linux loaded on it as a practice tool.

These classnotes are organized by topic. More often than not, these topics will also coincide with particular days in the class. The topics will be presented in the following order:


What is UNIX?
/Overview of UNIX
/From UNIX to GNU
Linux : an Introduction
/Do not fear the Command Line
/Choice is Good
/UNIX Shells
/Usernames and Passwords
/Entering Commands I
/Entering Commands II
/Pipes and Redirects
PROJECT : /Searching for Processes
UNIX File System and File Security
/UNIX Standard Tree Structure
/Exploring the Root File System
/There's no place like Home
/Understanding Paths and Pathnames
[/Navigating the File System]?
PROJECT : /Creating a chroot structure


UNIX History II
/BSDs and Forks
/Enter the Penguin
/Overview of Linux
UNIX Users and Groups
/UIDs and GIDs
UNIX File Processing
/Understanding UNIX Files
/File Ownership and Security
/Setting Ownership and Permissions
PROJECT : /Create a simple tree
UNIX Editors
/The simplest editor
/Introduction to vi
/Using the vi editor
PROJECT : /Use vi to edit a file
/Introduction to Emacs
/Using the Emacs editor
PROJECT : /Use Emacs to edit a file
Process Management
/Introduction to Processes
/Viewing Running Processes
/The kill Command
UNIX Shell Scripts
/Introduction to Shell Scripting
PROJECT : /Create a simple shell script


UNIX History III
/Open Source and Conflict
/Modern UNIXes
/The POSIX Standard
/Current Uses of Linux
More UNIX Scripting
BASH Scripting Continued
/Aliasing and Exporting
/Advanced Piping
PROJECT : /Coding our own Add User script
/BASH Configuration
PROJECT : /Updating your .bashrc
Introduction to Perl Scripting
/Introduction to Perl
/Starting a Perl script
/Common Perl Commands I
/Common Perl Commands II
/Perl Regular Expression Matching
/Perl Modules
PROJECT : /Gathering information by user
Installing New Applications from Source
/Application Building under UNIX
/Dealing with tar files
/Dealing with ZIP files
/Building an Application
PROJECT : /Introduction to Nano
[/Installing Perl Modules]?
PROJECT : [/Install a Perl Module]?


UNIX History IV
/More Praise for Linux
[/Recent UNIX Events]?
/UNIX History Links
Linux Networking & Commands
/Networking Overview in Linux
/The Loopback Interface
/inittab and Boot Scripts
/Name Resolver
/Configuring Network Servers and Services
/Other Misc Networking Files
/ifconfig Overview
/Red Hat's Netconfig
Accessing the Web from the Command Line
/Introduction to Lynx and Links
/wget and curl
PROJECT : /Mirror a website
Remote Access
Introduction to XFree86
/What is XFree86?
/Common X-Window Concepts
/A Choice In Displays
/Window Managers
/Desktop Managers
/Misc X Apps I
/Misc X Apps II
/Accessing X Remotely
PROJECT : /SSH and Run X-App
Overview of Screen
/What is Screen?
/Screen usage
[/Screen Configuration]?
PROJECT : [/Custom Screen Setup]?


/Lowlevel System Control
Terminal Fundamentals
/Extra options for getty
/Switching between Virtual Consoles
Scheduling Under Linux
/Overview of UNIX Scheduling
/Run at
PROJECT : /Schedule a one time event
/User Specific Cronjobs
PROJECT : /Schedule a user event
/System Wide Cronjobs
PROJECT : /Schedule a system event
Introduction to the RPM System
/What is RPM?
/RPM Strengths and Shortcomings
/Alternatives to RPM
/RPM Usage
/Places to find RPMs
PROJECT : /Install Apache
Apache CGI Scripting Overview
/Scripting For Apache
PROJECT : /Install a Simple Perl CGI
Linux Installation
In-class activity
Introduction to Kernel Recompilation
/Why would I ever want to compile a kernel?
/Basics of Kernel Compilation
/Compiling From Source RPM
PROJECT : /Build a new Kernel

/Useful UNIX and Linux Links

Classnotes | RecentChanges | Preferences
This page is read-only | View other revisions
Last edited August 13, 2003 4:22 pm (diff)
(C) Copyright 2003 Samuel Hart
Creative Commons License
This work is licensed under a Creative Commons License.