Unix

These nice people (not to be confused with) asked me to give a few lectures about Unix. After each lecture the slides will be posted here along with links to anything I've mentioned in the lecture.

Lecture One - WTF?

Download the slides

History
UNIX Family Tree
Free Software
What is Free Software?
Why Software Should Not Have Owners
Free Software / Open Source
More...
Culture
Althought the author's writing style and attitude some find offensive, the following article gives a reasonable overview of the pointy end of Unix culture and of how to get help. The examples of good and bad questions are especially good - the rest of the essay - take it or leave it.
Connecting to the University UNIX machines
General info and zero install connection!
Live CDs
Knoppix (GNU/Linux)
Gnoppix (GNU/Linux)
Dyne:Bolic (GNU/Linux)
FreeBSD Live CD
OliveBSD (OpenBSD)
NetBSD Live CD
Schillix (GNU/OpenSolaris)
Nexenta (GNU/OpenSolaris)
Picking a Unix
OpenBSD
NetBSD
FreeBSD
Darwin
GNU/Hurd
Debian (GNU/Linux)
Ubuntu (GNU/Linux)
Mepis (GNU/Linux)
Fedora (GNU/Linux)
SuSE (GNU/Linux)
Mandriva (GNU/Linux)
Gentoo (GNU/Linux)
LFS (GNU/Linux)
Slackware (GNU/Linux)
OpenSolaris
... or have a look at this site ...
Information
man pages online (althought you'd be better of just using the man command).
The Linux Documentation Project, especially the HOWTOs and some of the Guides.
I like books by O'Reilly Publishing, they write good books (their book administering TCP/IP networks is very good and this book is just crazy). They are also lovely people and have lots of their books freely available on the Internet.
There are Google variants for information on GNU/Linux and BSD.
Most projects have their own mailing lists, you may wish to brush up on your mailing list etiquette.
Personally I can't stand web fori, but some people seem to like them, apparently Linux Questions is quite good.

Lecture Two - CLI

Download the slides

More information
Bash Guide for Beginners and the Advanced Bash-Scripting Guide.
Filesystem Hierarchy
The proposed linux standard.
Everything else...
man ...

Lecture Three - X Windows

Download the slides, the diagrams are also available.

More Information on the X Protocol / X Lib
O'Reilly Publishing used to print a series of books on using XLib and the X Protocol. These are very good but unfortunately out of print. However, they are a generous organisation and have made them freely available via their Open Books project.
Tool Kits
Motif, GTK, Qt
Window Managers
FVWM, BlackBox, Window Maker. There appears to be a fairly comprehensive list on XWinMan.org.
Desktop Environments
GNUstep, GNOME, KDE, XPde
The live CD I was using
Is Kororaa, it is based on Gentoo and is a demo of XGL an XServer that uses OpenGL to display. Last time I checked it required an ATi or Nvidia graphics card an the binary drivers. Plans were underway to get it working with Intel graphics chips and the OpenSource ATi drivers but I don't know of how far this has got. At the time of writing I'm not aware of the stable version of any distro shipping XGL but I suspect that within the next 12-24 months all of them will.

Lecture Four - Introduction to Security

A slight change of direction, the remaining three lectures are on security. They refer to UNIX but aren't directly 'on topic'. Download the slides. A very good paper on the subject is The Protection of Information in Computer Systems by Jerome Saltzer and Michael Schroeder. Despite being around 30 years old, it's description of the problems and design principles are still pretty much state of the art -- and people are still ignoring them and building insecure systems.

On a slightly unrelated note, I've been asked a number of times about the system I use for presentation. The slides are created in LaTeX, using the Beamer package and displayed using xpdf. (All of which is Free Software)

Lecture Five - Secure Shell

Download the slides, download the source of the most popular implementation or for more information, read the RFCs (note of key importance are 4252, 4253 and 4254) or read The Snail Book (note that there is a copy of this in the University of Bath library).

Lecture Size - Securing a Linux Install

Download the slides.

Some of the projects mentioned: