NETS header NETS Homepage UCAR Homepage NCAR Homepage SCD Homepage NETS Homepage About NETS Work requests & support
  Browse NETS topics: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Hypermail (NETS notes)


By Blake Caldwell (blake@ucar.edu)
updated 2003-05-21 by Pete Siemsen (siemsen@ucar.edu
updated 2003-09-26 by David Mitchell (mitchell@ucar.edu)
updated 2004-01-30 by Pete Siemsen (siemsen@ucar.edu)
updated 2005-04-08 by Jeff Custard (jcustard@ucar.edu)

Table of Contents


Introduction

This web page goes over the general issues, installation, configuration, and troubleshooting of the Hypermail archiving system. Hypermail is a open source program that converts standard email messages into web pages. NETS has used this system to archive the mail sent to several NETS, Web100, and FRGP mailing lists. Hypermail was initially installed on netserver in March of 2000.

How is Hypermail Set Up?

Hypermail is set up on netserver to archive messages as it receives them. hmail@netserver.ucar.edu must be a member of all mailing lists that are to be archived so that it receives a copy of each message. When a message reaches hmail on netserver, it is sent to a program called Procmail through the use of a .forward file. Procmail looks at the header information of the message, usually the To or Cc lines, to determine which mailing list the message was originally sent to. As specified in the /usr/home/hmail/.procmailrc file, Procmail then sends the message to Hypermail with the appropriate configuration file. Once Hypermail is called with the correct configuration, it can archive the message into the specified directory and update the index files.

Mailing Lists that are Currently Archived

Known Problems

There is one bug which I ran into involving the creation of web pages based on specified header and footer files. Hypermail appears to have a problem with the string width="100%". It substitutes a question mark for the second double quote. All web browsers can cope with the question mark in there, but not a missing double quote. So instead I put width="100% " which seems to work, even though it still puts in a question mark.

Directory Structure on Netserver

The Hypermail web tree starts out with an index page containing links to all of the mailing lists. Then there are index pages, each with links to the directories containing the messages sorted out by month and year. Each month has its own directory, which is named with the first three letters of the month, followed by the last two numbers of the year. For example jan99 and nov00. Inside these directories are the index pages Hypermail creates, and the messages themselves.

Automating Hypermail

One thing Hypermail doesn't do is group messages by a set amount of time. To get around this, I wrote a Perl script called hypermailmonthly.pl that resides in /usr/home/hmail/ and is run as a cron job every month. This script changes the directories where Hypermail will store its messages for each mailing list to reflect the change in month. It also modifies the web pages to include links to the directories of the new month.

Installation

Configuration

Current Configuration Files

Troubleshooting

Searching (JC updated 2005-04-08)

To search the Hypermail archives for a string, go to netserver and do

cd /usr/web/nets/archives/internal/mailing-lists
find . -type f -exec grep -i -l "str" {} \;

...where str is the string you want to find. This will search all the hypermail directories and list the files that contain the string.

If you remove the "-i", the search will become case sensitive.

If you remove the "-l", it'll show every line that matches instead of the names of files.

If you replace the . with the name of a mailing list, it'll search just that list.

EXAMPLES

To show lines that contain the string "Bob Brenner"...

find . -type f -exec grep "Bob Brenner" {} \;

To show names of files that contain the string "Bob Brenner"...

find . -type f -exec grep -l "Bob Brenner" {} \;

To show names of files in the bpop mailing list that contain the string "Bob Brenner"...

find bpop -type f -exec grep -l "Bob Brenner" {} \;

Note that the hyper-mail archives for these lists:

archive; csac; dtc-tech.html; nb; ne.html; nets-outage.html; nets.html; phones; pr.html; wc; wl.html; cg1-ext;  csac.html; ithaka; nb.html; nets; nets-work;ni; phones.html; strat; wc.html; cg1-int; dtc-tech; ithaka.html; ne; nets-outage; nets-work.html; ni.html; pr; strat.html; wl

Now live in: netserver:/usr/web/nets/datacomm/mailing-lists

Links


Address comments or questions about this Web page to the Network Engineering & Telecommunications Section at nets-www@ncar.ucar.edu. The NETS is part of the Computational & Information Systems Laboratory of the National Center for Atmospheric Research, which is sponsored by the National Science Foundation and managed by the University Corporation for Atmospheric Research. This website follows the UCAR General Privacy Policy and the NCAR/UCAR/UOP Terms of Use.