[USAIL previous] [USAIL next] [USAIL top]

This paper was first published by the USENIX Association in the Proceedings of the LISA X Conference.


A New Twist on Teaching System Administration

by Raven Tompkins, rtompkin@indiana.edu

Introduction

The Unix Workstation Support Group (UWSG) is part of University Computing Services (UCS) at Indiana University. Although UWSG is a small, five member group, located on the main campus in Bloomington, the group provides advanced system administration consulting for the entire campus system. This includes eight branch campuses as well as the main campus.

As a growing number of departments on campus turn to Unix to meet their computing needs, the need for system administrators increases. Many departments lack the finances to both purchase a Unix workstation and hire a system administrator. For example, the UWSG set up a new departmental workstation in late 1995. By mid summer 1996, the department still did not have a system administrator and the systems main users had only a minimal knowledge of Unix. Compounding this problem is a general shortage of experienced system administrators on campus. This has resulted in an increase in the number of novice system administrators and Unix users interested in learning system administration. The UWSG has felt this increase directly, as group members continue to spend more and more time on basic system administration consultations.

Because many of these requests come from outside the campus system, it is apparent that this issue is not limited to the Indiana University computing environment. The number of universities offering system administration courses has increased. University departments who have access to these courses frequently cannot afford the time involved in enrolling a staff member. Additionally, system administration is often an upper-level course that also requires several prerequisite courses. The number of commercial Unix system administration courses has increased. However, the cost of these training courses is prohibitive for many who could use the instruction.

Project Development

In 1995 the UWSG was approached by the Computing Education group of UCS and asked to develop an Education Certification (EdCert) course for Unix workstation system administration. As the group began working on this project, it became apparent that a single course would not be sufficient. According to the SAGE paper, SAGE Job Descriptions:

The best systems administrators are generalists: they can wire and repair cables, install new software, repair bugs, train users, offer tips for increased productivity across areas from word processing to CAD tools, evaluate new hardware and software, automate a myriad of mundane tasks, and increase work flow at their site.
Unix system administration encompasses a body of knowledge so vast that the sheer volume of material cannot be contained in one course. The SAGE "Job Descriptions" paper also states that a junior level system administrator should have one to three years experience. System administration is an ongoing learning process. A training course can lay a foundation on which to build, but after the course, then what? Where does a novice system administrator go to learn more? Although there is a growing body of Unix documentation on the World Wide Web and in print. Here again, locating specific information can be time consuming and expensive.

During the many brainstorming sessions that gave birth to the Unix System Administration Independent Learning (USAIL) project, it became apparent that there were a number of basic system administration questions that UWSG members answered repeatedly. Group members were spending a substantial amount of time on the phone talking new system administrators through the same procedures and emailing out the same sets of instructions. Some of these issues could be addressed with existing online documentation, but there was no single Web site to which users can be pointed. In other instances the existing documentation was incomplete, too technical to be accessible to new system administrators, contained too much information, or lacked step by step instructions on how to complete a task.

Bearing in mind the limitations of a single training course, the UWSG decided on a more encompassing approach that would incorporate the material developed for a Unix workstation system administration training course into a larger body of information for continued independent learning. The Unix System Administration Independent Learning (USAIL) project integrates documents written by the UWSG for its system administration course with existing Unix documentation and other system administration courses available on the Web. In order to take advantage of the growing body of online Unix documentation, USAIL needed to be Web based. This brought up a number of other issues. To whom does the information need to be accessible? How will the information be maintained? How should it look?

In order to extend the UWSG's ability to provide effective system administration consulting services, USAIL needed to be available to all nine Indiana University campuses across the state. This prompted discussion of whether USAIL access needed to be restricted to Indiana University users. The number of questions UWSG received from outside the campus system and the growing number of online system administration courses made it evident that the need for USAIL went beyond the IU campus. In the tradition of Unix as an open system, USAIL needed to be available to the whole Internet community.

There are other system administration courses available via the Web. The difference between USAIL and other courses use of the Web is twofold. Other courses use the Web to deliver information for use as supplemental material to a course textbook or books. Some courses publish only brief lecture notes or outlines. There are courses which make all the learning materials available, but only as the course progresses through them so they are not always accessible. All USAIL materials are freely available to anyone with Internet access. Using the Web as the delivery mechanism facilitates an open learning approach where users may work through the material at their own pace. The material may be started at any time, worked through as a course, or used as a reference to find answers to specific questions.

Because USAIL is entirely Web-based, the material can be updated, maintained and expanded in a timely manner. The Web also provides the means to make the material into a dynamic, interactive body of documentation, rather than a static one. Working through the course portion of USAIL requires active participation on the part of the user, whereas simply reading a book on system administration is a passive experience. For the first few months USAIL maintenance of hypertext links was done manually. Currently the UWSG is working to automate this process with a combination of existing link checker scripts and site-specific shell scripts. Optimally, USAIL links would be checked daily. Unfortunately, the time required to verify the output from the link check script makes this an impractical solution. The UWSG hopes to set up a system where links are checked weekly or bi-weekly.

In order to make USAIL accessible to as many people as possible it needed to be viewable from a variety of Web browsers. This required that the site not be graphics intensive. Although the recommended browser is the current version of Netscape Navigator, the project information may also be accessed with Lynx. Each USAIL page written by the UWSG contains a header, footer, and a series of navigation buttons. The header includes information on when the page was last updated. The footer contains the date, a small copyright notice, the URL of the document, and a "mailto" for contacting the UWSG.

Across the top of each page are four buttons: "contents", "contents+", "glossary", and "library". These buttons take the user to particular USAIL documents. The "contents" button is linked the main introductory page. The "contents+" button allows a user to view the expanded table of contents, which lists all the USAIL documents individually.The "glossary" button is linked to an online USAIL glossary. The "library" button is linked to the table of contents for the USAIL library.

Below these buttons are three small arrow buttons, that can be used to navigate through the project. The arrow buttons are also displayed at the bottom of each page. "alt" tags are used so that in a non-graphical browser the navigation buttons appear as text.

A USAIL style guide was developed to help create a consistent look for the project. The style guide includes typographical conventions, links to page templates, and guides for creating glossary entries and quiz data bases. Typographical conventions currently used in USAIL are based on common typographical conventions found in printed Unix system administration books. This means that physical HTML tags are being used rather than logical ones. Although there are logical tags specifically for user keyboard input, <KBD>, and variables that the user needs to replace with a value, <VAR>, most browsers render these the same way.

How USAIL Works

USAIL is a work in progress. At present it consists of three main parts: a self-study system administration course, glossary, and a reference library. The beginning knowledge level of the course was dictated by the services the the UWSG provides. Although the course begins with a Unix review section, a basic working knowledge of Unix is assumed. A "For First Timers" section includes links to tutorials for users interested in learning Unix.

The course is laid out under a series of subject headings , or topics, that encompass various aspects of system administration. Choosing topics was not an easy task. Much of the information that needed to be conveyed was interconnected. However, constructing a step by step training course meant that the information had to be laid out in some linear fashion.

The original list of topics came from a brainstorming session where different aspects of and tasks relating to system administration were written down on pieces of paper. The tasks were then grouped according to whether a system administrator must know how to do this, should know how to do this, or could know how to do this. From there the tasks were organized into topics. During development, the topic list has changed several times. The current list is as follows:

  1. Unix Review
  2. Basic Unix Concepts
  3. Installing the Operating System
  4. Integrating Your Machine with the Network
  5. Administrating Mail
  6. Daily System Administration Tasks
  7. Administrating Peripherals
  8. Backups
  9. Administrating Software
  10. Performance and System Tuning
This list of topics is not meant to be an exhaustive list of all the information a system administrator needs to know. Topics are intended to be loose headings under which more specific information can be organized.

Each topic is subdivided into a series of documents, or modules, that pertain to that subject. The modules function as stand-alone references in addition to being part of a course of learning for prospective system administrators. In cases where the amount of information warranted it, topics are divided into subtopics and then into modules. This structure allows modules to be added as information and the needs of system administrators change. This is vital for keeping the course current.

While reviewing other online system administration courses on the Web and Computer Based Training software purchased by Indiana University, it became apparent that USAIL material should be presented in a dynamic, interactive manner. Long, unbroken segments of text are difficult to read through. This is particularly true if they contain technical or abstract conceptual information. With some Unix concepts, such as disk partitioning and filesystem layout, there is a divergence between physical and logical structure. Pictorial representations can be invaluable in learning how these concepts function. During several brainstorming sessions, where UWSG members discussed their own experiences with learning Unix and system administration, another important consideration arose. Reading information is not the same as learning it. In order to provide an opportunity for users to learn system administration, rather than simply read about it, part of the course had to be a hands on experience.

Graphics, lab exercises, auto-graded quizzes, and inline questions allow users working through the material to learn by direct participation. Most topics include lab exercises that are designed to provide hands on experience in working with the material. Many of the modules written by UWSG include inline multiple choice questions mixed in with the text. The answers to these questions provide additional information on a given subject and an opportunity to begin "thinking in Unix". Most topics end with a quiz.

A Perl CGI script randomly selects quiz questions from data files and presents them as an online form. When the quiz form is submitted, it is graded by another Perl CGI script. A results page is then returned which tells the user whether or not they have passed and which questions were missed. Because the quiz questions are randomized, users may return to the same material for review and retake a quiz without receiving an identical set of questions each time. Even if a few of the questions are reused, they will not be presented in the same order. Questions are either multiple choice, or true/false. Each time a question is given, the order in which the possible answers are presented is also randomized.

One of the most recent additions to USAIL are three final, self-evaluation quizzes. Questions for these quizzes are selected from a master database that contains all the questions from previous USAIL quizzes. Each of the three quizzes is aimed at a different level of competence in beginning system administration. A quiz consists of sixty questions and can be completed in approximately forty-five minutes.

Thanks to Denis Howe's Free On-line Dictionary of Computing, the UWSG did not have to build the USAIL glossary from the ground up. The UWSG obtained permission to borrow and modify as many entries as needed, provided that credit was given to the original source. Currently the glossary mainly contains entries for terms that may not be familiar to beginning system administrators. The UWSG hopes to expand the glossary to include terms relevant to Unix in general. The glossary engine is also composed of a series of Perl scripts. In addition to displaying glossary entries, the scripts cross reference them and attach an attribution section which gives credit to the source of the definition. At the end of each module written by the UWSG there is a "Terms used" section. This lists the terms used in the module which may be found in the glossary. After several lengthy discussions the UWSG decided that terms should be noted in this manner rather than making them hot in the text itself. Most terms, once they are introduced, are used repeatedly throughout the modules. Making only the first use of a term hot would be inconsistent, but making the term hot each time it was used would be disruptive to the flow of text. The glossary can be accessed via a button at the top of all documents written by the UWSG. The glossary is constructed so that users may look up a particular term, view all the terms contained in the glossary, or look at all the terms that begin with a certain letter.

The third segment of USAIL, the reference library, is intended to serve as a central clearinghouse for Unix documentation available on the Web. When system administrators need information on a particular subject, they can look for the appropriate topic in the library and find what they need. The library is organized into a series of library lists on general topics. Each library list includes an index to narrow the topic into smaller categories. Currently the library includes the following lists:

The library is growing rapidly, with new lists or documents being added weekly. The introductory USAIL page includes a request for comments and suggestions. Suggestions and requests from users will allow the UWSG to expand the library to meet the user's needs.

Conclusion

USAIL constitutes a new approach to teaching system administration. This approach can fill the gap between short term training courses and actual practice, as well as provide an independent means of learning system administration. There are several advantages to this approach. As opposed to the high cost of commercial system administration courses, USAIL is freely available to any user who has access to the Internet. Because USAIL is Web-based, it does not rely on proprietary software or on a particular operating system.The amount of time spent on course material is completely up to the users, who are free to work at their own paces. If a system administrator needs information on a specific topic they can access what they need without having to perform an extended Web search to locate it.

USAIL material can be easily updated and expanded in accordance with user's needs. Using the Web as the delivery mechanism also allows the UWSG to take advantage of existing online Unix documentation and create documents where they are needed. In reviewing existing documentation UWSG members were surprised at what was and wasn't already available. For topics such as Unix security, there was an enormous amount of documentation. However, it was all focused on particular security issues or aimed at particular platforms. There seemed to be no general overview of Unix security that introduced the concepts involved or discussed the immediate security considerations involved in setting up a workstation. Similar issues arose in creating the "Performance Monitoring and System Tuning" topic. There was very little documentation. Most of it dealt with kernel parameters, which is not a particularly accessible subject to novice system administrators. In creating USAIL modules the UWSG wanted to provide the instructions necessary to complete a task and lay the groundwork needed to understand why the task was important.

Due to the independent nature of the USAIL project, a definitive success measure is difficult to define. Because most of the modules written for USAIL are also part of a Computing Education EdCert course on Unix workstation system administration course taught by the UWSG, the group has been able to use the EdCert course as a testing ground. The EdCert course includes in person lab sessions using the lab exercises included in USAIL. The lab sessions are proctored by the UWSG. The UWSG has also kept statistics on quiz questions. The number of times a question is offered and the number of times it is answered correctly are both recorded in a file. This has given the UWSG the opportunity to evaluate the USAIL modules. Is the information too technical or not technical enough? Do users understand the concepts they are working with? Is the information organized effectively? Are users given enough information to be able to perform the lab exercises?

In the short time that USAIL has been available, the UWSG has received a fair amount of email feedback from outside the IU campus system. These messages included requests for information on the project, suggestions for additional topics, compliments, requests to download the modules, and a request to mirror the entire project. UWSG is also using USAIL as a place to refer system administrators when they have questions.

The USAIL project can be accessed on the Web at http://www.uwsg.indiana.edu/usail/.

Although a single UWSG member was chosen to actually write this paper, the paper and USAIL are the work of the group as a whole. The UWSG includes:

The following former members of UWSG also contributed to the USAIL project; Chris Dent, Josh Walgenbach, and Chris Brierley.


[USAIL previous] [USAIL next] [USAIL top]