Project Report
for cmsc 691x
UNIX SYSTEM ADMINISTRATION
by
Zhihua (Scott) Jiang
Kejian (Jassmine) Hu
Haiying Bao
Yiqing Ren


Introduction

Purpose of our project
Introduction to Big Brother
Introduction to Spong

Project Demo Page

Big Brother
Spong

Bug Report

Evaluation of the Two Projects

Conclusion

Reference



Introduction

Project Demo Page

Up to Top

Bug Report

During the time we are installing Spong, we have found a bug of Spong.  The worst part of Spong is lacking of basic information and instruction of installation including the configuration of building process and Spong configuration. But this is also the reason why we have chance to discover a bug.

The first and most significant bug is inside the key installation script named "build". The author uses tool under Perl named pod2html to convert his pod files into html files used for Spong help. The auther intended to transfer his pod files but he forgot to redirect the output into files so you just see tons of translation on screen while there is nothing inside the directory which those html files after translation should be put in.

Here is the detail how to fix it:

Inside the function of build in script "build", almost at the end of this function,  we changed

ssystem("cd ./pod; $POD2HTML $file.pod && mv ./$file.html ../html/");

into

ssystem("cd ./pod; $POD2HTML $file.pod >./$file.html&& mv ./$file.html ../html/");

After this change, we will be able to save the translation for later use.

Evaluation of the Two Projects

Big Brother Evaluation:

It is easy to install Big Brother than to install Spong, because in the Big Brother project package downloaded from the ftp server, it also provides clear instruction for installation. Since our testing machine doesn't have kermit under specific directory, we do not test pager functions provided in this project. In addition, due to the fact that different machines put some programs such as ping under different directories, we have to change the path of them by hand.

But all in all, Big Brother is a quite well developed project and also it is a powerful and beautiful tool for network monitoring.

Spong Evaluation:

During the installation of Spong, we gradually reach a conclusion that Spong is badly configured , poorly programmed  and organized.  Also Spong lacks of basic maintenance. We have emailed more than three emails to the Spong maintenaner but none of them has been replied so far.

The most important part of Spong is to modify the installation script named "build". Well first there is no any information about customerizing this script except the script itself. So if you want to use Spong, you must be able to understand perl. Also the author of Spong has defined some variables inside the script  and unfortunately those variables and the relationship between them are hardly understood in a short peroid. For instance, there is a variable named $PREFIX which is used to define the directory Spong should be pub in. Then there is another variable name $IPREFIX which is also used to install Spong during ./build install peroid. In this case, the auther intended to expand the Spong tar file in one place and copy them into anther place after expanding. But after we read build script, the Spong is actually expanded
under the place when you first untar the tar file.

The location of configuration file used after the "./build install" step is also
confusing. Unlike apache, you only need to modify the config file under conf
directory, you need to change it under etc directory of the Spong home of your own and you can just leave the config file in config directory alone. Well the worst part of it is that you will not be able to know this unless you find yourself can not start spong-server and come back to read the raw Perl script.

Also we have found two bugs in order to make Spong work. The detail of bugs please refers to the bug report.

Up to Top

Conclusion

This project brings us an opportunity to dive into the current-doing Linux projects and learn a lot from experiencing pratical work as an system administrator. From installation of apache server as the web server for our project, we get to know the apache project in the world and also learn how to install and configue it as the way we plan to implement the two projects (because they both have some special requirement for server). During installation of Big Brother and Spong, we become familar with perl programming and shell script, because unless we understand what the programs say, we couldn't find a way to fix the problems it exists.

There is an old saying, "nothing is perfect in the world", so with our project and the two projects we studies. In bug report section, we demonstrate some bugs we find during our installation and implementation of the two projects. At first, we are struggling to fix them before the due day of our project. However, our instructor tells us the most important parts of our project is not to fix the bug but to find the projects we are interested in and know how and who is the person to contact to solve the problems during its execution. I think this suggestion is also good for us to understand our goal and what we have done for it.

Up to Top
 

Reference

Network Monitoring with Linux
Big Brother Project Home Page
Spong Project Home Page

Up to Top