vacation(1)
NAME
vacation − return “I am not here” indication
SYNOPSIS
vacation -i
vacation [ [-a alias] ...] login
DESCRIPTION
The vacation program returns a message to the sender of a message telling them that you are currently not reading your mail. The intended use is in a .forward file in $HOME. For example, your .forward file might contain:
\eric, "|/usr/bin/vacation -a allman eric"
which would send messages to you (assuming your login name was eric) and reply to any messages for eric or allman. The \ preceding eric is required to force direct delivery to eric’s mailbox and prevent an infinite loop through the .forward file. The double quotes are needed to tell sendmail(1M) to treat the enclosed as a unit, rather than separate recipients. It is also important to specify the full path for the vacation program, and there must be no white space between the | character and the start of the path name.
No message is sent unless login or an alias supplied using the -a option is a substring of either the To: or Cc: headers of the mail. No messages from ???-REQUEST, Postmaster, UUCP, MAILER, or MAILER-DAEMON are replied to, nor is a notification sent if a Precedence: bulk or Precedence: junk line is included in the mail headers. Only one message per week is sent to each unique sender (at each unique host system). The people who have sent you messages are recorded in a database in the files .vacation.pag and .vacation.dir in your home directory.
The vacation program expects a file .vacation.msg, in your home directory, containing a message to be sent back to each sender. It should be an entire message (including headers). For example, it might say:
>From: eric@ucbmonet.Berkeley.EDU (Eric Allman)
Subject: I am on vacation
X-Delivered-By-The-Graces-Of: The vacation program
Precedence: bulk
I am on vacation until July 22. If you have something urgent,
please contact Joe Kalash <kalash@ucbingres.Berkeley.EDU>.
--eric
Header lines in this file must be left justified and must not be preceded by any other lines, including blank lines (see sendmail(1M)). If there is no .vacation.msg file, vacation uses the following file (if it exists):
/usr/share/lib/vacation.def
Otherwise, it logs an error.
vacation reads the first line from the standard input (the incoming mail message in the example .forward file above) for a UNIX style From line to determine the sender. sendmail(1M) includes this From line automatically, and its absence indicates non-mail input.
Options
The vacation program supports the following options:
-i Initializes the vacation database files. This option should be used before modifying a .forward file.
-a alias Identifies another name that can legitimately appear in the To: line of the mail header instead of your login name. More than one -a option can be specified.
EXTERNAL INFLUENCES
Environment Variables
LANG determines the language in which error messages are printed.
DIAGNOSTICS
On error, vacation exits with a value from <sysexits.h> and causes sendmail to report an error back to the sender of the original message. Errors such as the absence of .vacation.msg or calling vacation with incorrect arguments, are logged using syslogd on the system where vacation actually runs (see syslogd(1M)). The syslog file (/var/adm/syslog/mail.log by default − see /etc/syslog.conf and syslogd(1M) for customizations) should be inspected when vacation generates mailer error messages.
Remember that if the machine is configured for shared mail, inbound mail is handled at the mail server rather than on mail client nodes. This means that syslog diagnostics appear in the mail server’s syslog; not the client’s syslog.
WARNINGS
Errors in the .forward file can lead to loss of mail and infinite mail loops.
Always send test mail to yourself after configuring vacation to be sure that it is working properly. This is akin to checking telephone forwarding before leaving for an extended period, and can prevent loss of messages.
AUTHOR
vacation was developed by Eric Allman and the University of California, Berkeley.
FILES
$HOME/.vacation.dir Database file.
$HOME/.vacation.msg Message to send.
$HOME/.vacation.pag Database file.
/usr/share/lib/vacation.def System-wide default header and message.
/etc/syslog.conf Dictates where error messages are recorded.
SEE ALSO
sendmail(1M), syslog(1M), ndbm(3).
Hewlett-Packard Company — HP-UX Release 10.20: July 1996