CS197U: A Hands-on Introduction to Unix


This course offers a 6-week introduction to working with Unix, and it is intended to help students work with tools commonly used in CS courses. The class is comprised of both discussion and hands-on exercises in the EdLab. Topics covered include working with the command line, installing and maintaining the OS and software packages, version control systems, compiling programs, and more. No previous experience with Unix is required. This course is for majors and minors only, but it does not count towards the BS-CMPSCI. 1 credit.

Course Information


The course will be graded Pass / Fail. To pass the course, you must satisfy both: I cannot give any incomplete grades unless you have a note from a doctor proving your inability to complete the course material.

Class Attendance

I will monitor class attendance at the beginning of every class. Class attendance will be counted as following:

There will also be quizzes/in class exercises that will count for points towards your final grade.

Late Policy

Withdrawal Policy

Academic Honesty Policy


This is a rough outline for all the lectures (subject to changes). For up-to-date course information, please visit the Course Website.

Lecture 1: What is Unix/Linux?

Lecture 2: Using the Command Line

Lecture 3: Operating System Organization

Lecture 4: Your Own Copy of Linux

Lecture 5: Programming in Linux

Lecture 6: Programming & Scripting

Lecture 7: Configuring the System

Lecture 8: Subversion Control and Advanced Topics

Lecture 9: UNIX Networking Basics

Lecture 10: Security Issues and Traffic Monitoring

Lecture 11: Network Connections and WWW

Lecture 12: Review and all the others


(Exact details will be discussed in class)