CS41 - Linux Workstation Administration
David Morgan
Santa Monica College
see syllabus for email address



Grade reports

Course outline

SMC dates/deadlines

DETER net testbed
  get/use an account
  news report (pbs)


Linux links

Remote Unix access with telnet

Remote Unix access with ssh

Variations among Unixes

vi - the Visual Editor

Line termination

Using ftp

Fundamental Unix Commands

System calls

File permissions

Filesystem analysis

Cheat sheet - bash shell

Shell script basics

Shell programming:
if and while

Shell programming book

Slide presentations


Bootup & Init


Nuts & bolts

More nuts, more bolts

vi editor


The Shell

Linux GUI

Shell Scripting


Homemade shell

Process miscellany




yum (auto-update)

ssh - Secure shell


Scheduled processes

Unix time

System control

Centralized logging

Kernel building



Molay chapter 1 (more)

Line termination



FALL 2017
Section 4120 6:30p - 9:35p Fri Bus 263

This Website (http://homepage.smc.edu/morgan_david) will be used extensively to communicate with you. Announcements, grade reports, and assignments will be posted here. The site can be viewed from an internet-connected browser anywhere. You are responsible for awareness of the information posted here.

Grades - posted, link at left entitled "Grade information" (9/21)

Jet Propulsion Lab internship information. (9/20)

Homework - due on sputnik in your assignments folder by end-of-day Saturday 9/30
do - next assignment is at the link entitled "permissions" in the homework column of the course outline. The passwords for the accounts involved are all "password.UCLA$" and the server on which to remotely do the assignment is sputnik.smc.edu.
read - the "reading" material in Course outline's first 5 sections.  (9/15)

Take-away from presentation on bootup, initialization, and service management:




Cassini space mission - symbolizes the enterprise of human science of which we are small parts, and ends today. I knew a couple people on Jet Propulsion Laboratory's Cassini team where I learned that rocket scientists are just people, applied people first then rocket scientists a consequential second. People like you. Anything's possible.


Man page "section" categorization:

"Each man page should be categorized in a specific section, denoted by a single
character. The most common sections under Linux, and their human readable
names, are...:

1 User commands that may be started by everyone. 
2 System calls, that is, functions provided by the kernel. 
3 Subroutines, that is, library functions. 
4 Devices, that is, special files in the /dev directory. 
5 File format descriptions, e.g. /etc/passwd. 
6 Games, self-explanatory. 
7 Miscellaneous, e.g. macro packages, conventions. 
8 System administration tools that only root can execute. 
9 Another (Linux specific) place for kernel routine documentation."

from the "Linux Man Page Howto." Take a peek into /usr/share/man on Fedora, wherein all the man pages are actually stored. See also the Sobell textbook, pages 94-91, about the man command, the related info command, and the top sources for getting linux doc and information when you need it. (9/8)

Nuts and bolts - a few nuggets I find worth more than their weight
 - filename completion 
 - command recall with ctrl-r's incremental reverse search of history
 - "the root directory" versus "the directory root"
 - virtual terminals with ctrl-alt-Fn keystrokes  (9/8)

Accounts created for you on the remote server sputnik.smc.edu. See the link near the bottom entitled "Remote Unix system". (9/1)

Apple's launchd - the inspiration for systemd. You can see the strong parallels between this article's description of launchd and our discussion of systemd. (9/1)

FreeBSD startup - I logged in. Note the greeting I got.

This reflects operation of the SysV system initialization method in FreeBSD.  (9/1)

Homework -
do Linux commands due on electronically on sputnik per the instructions by end-of-day Wednesday 9/20.
read -
article Linux System Startup about Unix SysV startup procedure
article Inside the Linux Boot Process IBM
Sobell ch 5 "The Linux Utilities" - a catalog of important commands. Read it but skip discussion of the following less important commands: hostname, lpr, uniq, diff, mcopy, gzip/gunzip/bzip, apropos, finger, w, write/talk/mesg. Skip vim tutorial. While reading, I suggest you sit before a linux system and try out the commands and his examples hands-on. (9/1)

Flash memory fatigue factor. (9/5)

Course outline - with approximate weekly topic coverage corresponded to related readings, homework assignments, and in-class slides I will use. (9/1)

Sobell textbook author Mark Sobell has a website. (9/1)

Information sources about linux - see the latter several slides in the presentation at the link "Intro/installation" (9/1)

Replacing BIOS - including replacement for the MBR disk scheme. Necessitated to enable support of drives over 2TB. Dubbed "extensible firmware interface." (9/1)

Homework -
read -  from Sobell textbook-
Sobell ch 1 "Welcome" - read lightly, as casual background and overview
Sobell ch 2 "Installation Overview" - omit RAID and LVM sections. Omit sections on obtaining and burning source data on CDs.
Sobell ch 3 "Step-by-Step Installation" - read it over, up to section on X Window System; omit that and remainder of chapter. Describes installation steps.
view - this video of Marc Sobell, our textbook author, on a 1985 broadcast panel discussion about Unix. (9/1)

Bootable flash drives for you - containing a copy of linux similar to that on our classroom laptops, is available for copying to your USB drive. Optionally, if you are interested, bring an 8GB or bigger flash drive to class and we can copy onto it an image of the USB drive I have prepared. It seems to boot on several computers-- probably therefore yours. It's persistent. It contains the utilities and configuration I think useful for teaching. I have not road tested it on any scale but with you as my guinea pigs, it's an offer. It is not required, and I won't formally support things that may not work. No promises. But if you are interested come to class with a flash drive and I think you will leave with a linux environment in which to play. (9/1)

Procedures for using class laptops (9/1)

A Remote Unix system will be available for your use (acounts not yet created as of today).  (9/1)

Using ssh (secure shell). ssh is an important tool you will use for interacting with remote computers. For that you will need an ssh client. There are a number of ssh client alternatives. (9/1)

Running linux at home. (9/1)


Eniac - 1946

Milestone in the history of computation



see course outline

In-class exercises

see course outline