Date | Title | Slides | Lab | Solutions |
February 1 | Week 1: Introduction / The Shell | pdf, survey | txt | |
February 8 | Week 2: The Filesystem | txt | ||
February 22 | Week 3: Compiling Software from Scratch | pdf,NetHack patch | txt | |
March 1 | Week 4: User and Group Authentication | txt | ||
March 8 | Week 5: UNIX Power Tools | txt | txt | |
March 15 | Week 6: Shell Scripting | txt | ||
March 29 | Week 7: Network services: DNS, DHCP, SMTP, HTTP | txt | ||
April 5 | Week 8: System V Init; Getting Involved | NONE | ||
April 12 | Week 9: Desktop Linux Technologies (X11, udev, D-Bus..) | NONE | ||
April 19 | Week 10: "The Touch": Solving Problems You Know Nothing About | NONE | ||
April 26 | Week 11: Last Class - Final Project Presentations |
Time: Monday 6-8PM
Location: 310 Soda
Facilitator: Michael Gasidlo
Office Hours: W 12-1 PM at Terrace Cafe (roof of Bechtel). If raining, I'll be in one of the covered alcoves near HMMB.
Enrollment: 2 units
- Lower Division: CS 98 (26414); 20 students max (combined with Beginning section)
- Upper Division: CS 198 (26624); 10 students max (combined with Beginning section)
Welcome! This intermediate course is targeted towards CS students, either with some prior Unix experience or an eager ability to learn new things quickly. The curriculum is somewhat similar to the beginning class; however, we emphasize a more bottom-up approach that encourages a good working knowledge and understanding of Unixes before starting any system administration tasks. In fact, we spend very little time on what is considered stereotypical systems administration: the task of maintaining a web server with a database. That's just the tip of the iceberg. Any sysadmin worth their salt will tell you that there are far more things you need to be good at! See above for all the planned lecture topics.
The course is given in a lecture-lab format. After discussing the material for a given week, we will follow with 45 minutes to 1 hour of lab time. Many people will be able to complete the labs within this time, and most people will at least be able to complete at least half. So if you play your cards right, the weekly out-of-class commitment is less than an hour.
Astute readers have already noticed that there is a final project. This project requires you to collaborate with groups of 3-4 other people to develop some sort of system that shows that you know how to integrate many disparate open source components together into a coherent unit. However, you needn't be too ambitious. The project as a whole should take about 10-15 man-hours, which is up to 4 hours per person, all things being equal.
You can connect to the Soda lab machines from home if you wish. To do so, you will need a program called "SSH". SSH is included in OSX, as well as most Linux distributions. Windows users should use a program called PuTTY. If you are a Windows user and you are using the OpenSSH client to connect, we advise you to stop using OpenSSH and switch to PuTTY. The OpenSSH client for Windows is no longer maintained and may have security vulnerabilities
OS | Instructions |
OSX | 1. Open Terminal 2. Type "ssh cs198-xx@star.cs.berkeley.edu" 3. If this is your first time connecting, type "yes" when prompted 4. Enter your password when prompted |
*nix | 1. Open your terminal emulator of choice (gnome-terminal, konsole, etc) 2. Type "ssh cs198-xx@star.cs.berkeley.edu" 3. If this is your first time connecting, type "yes" when prompted 4. Enter your password when prompted |
Windows | 1. Download and install PuTTY 2. Open PuTTY 3. Enter "cs198-xx@star.cs.berkeley.edu" in the box labeled "Host Name" 4. If this is your first time connecting, hit "Yes" when prompted 5. Enter your password when prompted |