UNIX System Administration – Introduction – CMP030

With the appearance of Linux, a free version of the UNIX operating system that runs on commodity personal computer hardware, it has become easier than ever for regular people to run UNIX at home and gain experience in system administration that is directly applicable to larger commercial installations.

This is an introductory course in UNIX system administration in the Linux environment with emphasis on installation and configuration, user administration, service management, and new software installation. Setup and configuration of some basic network services (NFS, SMB, HTTP) will also be covered.

Prerequisites: UNIX Level II or equivalent experience

Technology update: Please bring a Flash Drive/Memory Stick 512MB or larger to class which will enable you to save your class work.

Textbook:

Books may be purchased at the MC Bookstore or online. You will need to know the CMP#(Continuing Education classes) for the class you are taking in order to look up information about the textbook.

Classroom Hours: 15

Course Content:

1. Review of Fundamentals

a. Directory commands
b. File display and manipulation commands
c. Informational commands
d. File access control commands
e. Editors
f. Archive and compression commands

2. Process Control

a. List process information – ps, pstree, top
b. Start, stop, and manipulate processes in foreground and background
c. Modify process execution priority
d. Send signals using the kill command

3. Regular Expression Pattern Matching

a. Notation for representing patterns (regexp vs. glob)
b. Wildcards and character classes

4. Power Utilities

a. Advanced text searching – fgrep, grep, egrep
b. Stream (command line) editing - sed

5. Creating shell procedures

a. Creating a shell procedure
b. Entry and exit processing – exit
c. How to interact with the user – read
d. How to source a shell script

6. Shell command line processing

a. Command substitution to generate command line text
b. Advanced command line interpretation
c. Command line sequencing
d. Grounding command: subshell and inline groups – () and {}
e. Using command substitution to generate command line arguments
f. Advanced I/O redirection

7. Shell programming essentials

a. Variables in shell programs
b. Accessing command line arguments
c. Built-in shell variables
d. Conditional evaluation – test
e. Conditional file and conditional string evaluation
f. Expression evaluation – expr
g. Integer expression evaluation
h. String expression evaluation

8. Structured shell programming

a. Conditional flow control – if
b. Iterative flow control – while
c. Iterative flow control – for
d. Abnormal loop termination
e. Case flow control – case

9. Advanced options

a. Advanced file system searching and processing – find
b. Sort and merge files using multiple keys – sort
c. Translate character set – tr

10. Advanced file examination utilities

a. Counting lines & words – wc
b. Compare text files – diff
c. Compare binary files – cmp
d. Partition large files – split
e. Extract text from binary files – strings
f. Binary file dump – od

11. User administration utilities

a. Display filesystem usage – df
b. Display disk usage – du
c. Disk quotas
d. Schedule tasks for periodic execution – crontab
e. Schedule tasks for deferred execution – at

12. X-windows
a. X-windows and its client-server model
b. Start a local X windows session
c. Popular window managers
d. Resizing, iconizing, and restoring windows
e. Starting a terminal emulator window – xterm
f. Popular X windows applications (gimp, ee)
g. Cutting and pasting