Com Sci 501
System Administration in Linux
Department of Computer Science
The University of Chicago
Ideas for Independent Projects
If you intend to do an independent project to earn an A,
please submit a brief outline of the work (perhaps 2 pages), with an
indication why it is interesting, by the end of the day on
Thursday 13 November. Here are some ideas for choosing a project.
- Choose an interesting piece of software that is not available in
a Debian package, and compile and install it on your
Linux system. Look at the
Linux Software Map for
a number of software distributions that work under
Linux. The
Yahoo software
index is another place to search. Install all source code,
executable files, configuration files, documentation, and other
supporting materials intelligently in your directory hierarchy. Keep
a diary of your experience in the installation, and be prepared to
discuss the issues in configuring the software. Depending on the
software, and how well it is packaged for distribution this task can
range from trivial to highly challenging. To merit the A, you
must explain why the task was not trivial, and how you made
important decisions and/or solved problems in porting the
material. Depending on the software and your preferences, you might
make the project interesting in several ways:
- Choose software that requires interesting parameter settings
in order to compile on your system.
- Co-ordinate several separate distributions to create a suite
of software for some interesting purpose, such as personal
finances, desktop publishing, etc.
- Create a good Debian package to install the
software. Look at the
Debian
Devloper's Corner for instructions and standards.
- Discover and correct errors in a Debian package. These
can be errors in the software itself, or in the installation scripts
and dependencies. You are more likely to be able to solve the latter
sorts of errors than the software errors. Send your corrections to
the package maintainer, so they may be included in a later
version.
- Write careful instructions for some installation task that was
confusing. You may improve on existing documentation by covering a
new topic, assimilating information from several documents into
coherent instructions, or specializing complicated documents to
cover particular configurations. Do not choose a documentation
project unless you can write clearly.
- Do a thorough and robust job of customizing some highly flexible
software, such as Xemacs, for a particular type of
user.
- Write scripts to automate some interesting system administration
tasks. Most, but not all, of the tasks that need automating have to
do with multiuser systems. If you choose an automation project, you
will need to demonstrate your scripts on some carefully chosen test
cases.
- You may also propose a type of project that I haven't thought of.
Mike O'Donnell
Last modified: Sun Nov 2 18:29:36 CST