topic # Topic Reading Homework Slides
1 installation and environment

linux vs UNIX,
linux vs linux distributions

roles of OS, shell, programs

Sobell ch 1 "Welcome" - an encompassing, casual background overview of linux

Tutorial on MBR and GPT

A GPT header, part of the GUID partition scheme.

"Hard disk layout" - ibmdeveloperworks
(through section "GPT partitions")

write-ups at class website links entitled 
"Remote Unix access with ssh"
"ssh client alternatives" 
 "Variations among Unixes"

do - fundamental linux commands

listen - 1985 roundtable discussion about UNIX. (alternative copy for download here as 25MB  zipped mp4 file)


for reference only:

line termination conventions per OS

hex-dump tools:
od command usage  - to dump files (and other data) in octal (and other) formats

for reference - 3 low-level dump/edit commands
  xxd's documentation
  od's documentation
  bvi's documentation

MBR dump

Parition table under the microscope


2 bootup and initialization

article Inside the Linux Boot Process IBM

The systemd mechanism for system initialization

systemd author's blog


systemd (system initialization method) Bootup (static slides version)

Bootup (narrated lecture version)

3 processes

How programs get run fork/exec

information scattered in Sobell. Read
 "Running a Program in the Background" pp163-165
 "Processes" pp373-376. Note the interesting pstree command
 "kill" pp.465-467
 "$$: PID number" pp.1028

- Linux fork() introduction (1st 11 min)
- Linux Exec System Call (1st 9 min)
- Fork and Exec System Programming (1st 9:54)

fork system call

exec system call

Processes (static slides version)

Processes (narrated slides version)

4 user interface: the shell Sobell ch 5 (7th ed.) "The Shell" - read the whole chapter

Sobell ch 9's section entitled "Processing the Command Line," pp. 403-413

for reference -|
 bash shell's man page
 Bash Reference Manual


filename expansion

The Shell (static slides)

The Shell  (narrated slides)

(some diagrams toward the end of the static slides illustrating I/O redirection  do not appear in the narration)

5 filesystem permissions Sobell ch 6 (7th ed.) read from the section "Access Permissions" pp. 191-98
and ch9 from the section "Writing and Executing a Shell Script" pp. 336-338

overview of "File permissions"


permissions intro



Permissions (static slides version)

Permissions (narrated slides version)

6 interactive bash  "The Linux Utilities" in the textbook (ch 7 in 7th edition, ch 5 in 6th edition) - a catalog of important commands. Read it but skip discussion of the following less important commands: hostname, lpr, diff, mcopy, gzip/gunzip/bzip, apropos, finger, w, write/talk/mesg. Skip vim tutorial.

ASCII chart - control characters
 eg ctlZ=dec26=oct032=hex1A
version1    version2

generating binary characters in several products
 documentation per product
 syntax product comparison matrix
script that generates them

arrays and shell customization

functions and file traversal



interactive bash (static slides version)

interactive bash (narrated slides version 1hr 15min)


text processing tools  (static slides version)

text processing tools (narrated slides version 2hr36min)

7 shell scripting Sobell ch 9 "The Bourne Again Shell" The chapter is full of embedded short 1- and 2-liner examples. I suggest you be at a bash shell while reading, to try out some of the interesting ones as you go. The most important topics appear in the following pages: 328-340, 352-356, 359-360, 366-367, 373-376, 388-389, 396-398

Sobell ch 17 "Programming the Bourne Again Shell"
sections of primary importance:
 981-1012 control structures
1014-1015 here document
1022-1029 positional and special parameters
1031-1034 variable parameters
1041-1044 read builtin
1056-1058 arithmetic/logical evaluation

write-ups at class website links entitled "Shell script basics" and "Shell programming: if and while"

see also the Bash Programming Introduction HOWTO

for reference -
Advanced Bash-Scripting Guide

Shellscript 1

Shellscript 2

categorize states

getting started  (static slides version)

getting started (narrated slides version)

Shell Scripting   (static slides version)

Shell Scripting (narrated slides version 2hr28min)

preliminary user administration Sobell ch 15 pp. 598-601 but skip the discussion of system-config-users user management script User administration

User administration (narrated slides version 1hr43min)

preliminary remote management, webmin explore webmin
preliminary task scheduling

Sobell Chapter 15 (7th ed.) section titled "Scheduling Tasks" pp. 607-611

scheduled jobs Scheduled processes

configuration management with ansible


ansible ansible
preliminary Subcontractors: bc, find, xargs


GNU bc (precision calculator) manual

bc tutorial examples -

Advanced Bash Scripting Guide contains coverage of 
bc, xargs, and find

GNU Findutils manual

interesting xargs stuff

bc exercise

Example program - reporting disk hogs

textbook awk lab 3, p 187-88, and lab 4, p 202.
Here are my solutions for lab3 and lab4

bc to perform RSA encryption algorithm


subcontractors - bc, xargs, find

real scripts - backgrounder3

preliminary Comparative UNIX
preliminary the X window graphical system



upcoming future topics:

candidate future topics:

system admin topics
 software maintenance/update

instructor reference:
sort multi-line blocks with AWK