Manual page for SENDMAIL(8)
sendmail - send mail over the internet
sends a message to one or more
routing the message over whatever networks
does internetwork forwarding as necessary
to deliver the message to the correct place.
is not intended as a user interface routine;
other programs provide user-friendly front ends;
is used only to deliver pre-formatted messages.
If given no flags,
reads its standard input
up to an end-of-file
or a line consisting only of a single dot
and sends a copy of the message found there
to all of the addresses listed.
It determines the network(s) to use
based on the syntax and contents of the addresses.
Local addresses are looked up in a file
and aliased appropriately.
Aliasing can be prevented by preceding the address
with a backslash.
Normally the sender is not included in any alias
if ``john'' sends to ``group,''
and ``group'' includes ``john'' in the expansion,
then the letter will not be delivered to ``john.''
Sendmail needs a configuration file which tells it how to rewrite addresses
and where to deliver messages. The default configuration file is located in
/etc/sendmail/sendmail.cf, but can be overridden by setting the
property of the
directory in NetInfo to a different file name.
Go into ARPANET mode.
All input lines must end with a CR-LF,
and all messages will be generated with a CR-LF at the end.
the ``From:'' and ``Sender:''
fields are examined for the name of the sender.
Run as a daemon.
This requires Berkeley IPC.
will fork and run in background,
listening on socket 25 for incoming SMTP connections.
This is normally run from
Initialize the alias database.
Deliver mail in the usual way (default).
Print a listing of the queue.
Use the SMTP protocol as described in RFC821
on standard input and output.
This flag implies all the operations of the
flag that are compatible with SMTP.
Run in address test mode.
This mode reads addresses and shows the steps in parsing;
it is used for debugging configuration tables.
Verify names only -- do not try to collect or deliver a message.
Verify mode is normally used for validating
users or mailing lists.
Use alternate configuration file.
refuses to run as root
if an alternate configuration file is specified.
Set the debugging flag
Set the full name of the sender.
Sets the name of the ``from'' person
(i.e., the sender of the mail).
can only be used
by ``trusted'' users
or if the person you are trying to become
is the same as the person you are.
Set the hop count to
The hop count is incremented every time the mail is
When it reaches a limit,
the mail is returned with an error message,
the victim of an aliasing loop.
If not specified,
``Received:'' lines in the message are counted.
Used together with the
flag to only process messages with the specified ID.
Don't do aliasing.
to the specified
Options are described below.
Process saved messages in the queue at given intervals.
process the queue once.
is given as a tagged number,
with ``s'' being seconds,
``m'' being minutes,
``h'' being hours,
``d'' being days,
``w'' being weeks.
``-q1h30m'' or ``-q90m''
would both set the timeout to one hour thirty minutes.
will run in background.
This option can be used safely with
Used in combination with the
flag to only process messages destined to the specified recipient.
An alternate and obsolete form of the
Read message for recipients.
To:, Cc:, and Bcc: lines will be scanned for recipient addresses.
The Bcc: line will be deleted before transmission.
Any addresses in the argument list will be suppressed,
receive copies even if listed in the message header.
Go into verbose mode.
Alias expansions will be announced, etc.
There are also a number of processing options that may be set.
Normally these will only be used by a system administrator.
Options may be set either on the command line
or in the configuration file.
These are described in detail in the
Sendmail Installation and Operation Guide.
The options are:
Use alternate alias file.
Maximum time to wait for aliases database to be rebuilt.
Character to use instead of spaces (blanks) in addresses.
On mailers that are considered ``expensive'' to connect to,
don't initiate immediate connection.
This requires queueing.
Set the delivery mode to
Delivery modes are
``i'' for interactive (synchronous) delivery,
``b'' for background (asynchronous) delivery,
``q'' for queue only - i.e.,
actual delivery is done the next time the queue is run.
Try to rebuild the alias database automatically
Set error processing to mode
Valid modes are
``m'' to mail back the error message,
``w'' to ``write'' back the error message
(or mail it back if the sender is not logged in),
``p'' to print the errors on the terminal
``q'' to throw away error messages
(only exit status is returned),
to do special processing for the BerkNet.
If the text of the message is not mailed back
modes ``m'' or ``w''
and if the sender is local to this machine,
a copy of the message is appended to the file
in the sender's home directory.
The mode to use when creating temporary files.
Save UNIX-style From lines at the front of messages.
The default group id to use when calling mailers.
The SMTP help file.
Do not take dots on a line by themselves
as a message terminator.
Checkpoint the queue files after every
deliveries. A gross hack to avoid sending duplicate messages if sendmail
crashes when delivering a message to a very large list of recipients.
The log level.
Set the macro
to the specified value.
Send to ``me'' (the sender) also if I am in an alias expansion.
Check that all aliases are deliverable when rebuilding the alias database.
If set, this message may have
old style headers.
If not set,
this message is guaranteed to have new style headers
(i.e., commas instead of spaces between addresses).
If set, an adaptive algorithm is used that will correctly
determine the header format in most cases.
Be sure that no more than
processes are running on the local system
before accepting a connection from the Internet.
Deferred connections are serviced
as soon as the process count falls to an acceptable level.
This option provides a way to avoid thrashing
if the mail server is subject to bursts of high load.
It is useful only when running in daemon mode.
Send a copy of the headers of each message that sendmail returns to the
specified address (typically ``Postmaster'').
Select the directory in which to queue messages.
The timeout on reads;
if none is set,
will wait forever for a mailer.
This option violates the word (if not the intent) of the SMTP specification,
so the timeout should probably be fairly large.
Save statistics in the named file.
Always instantiate the queue file,
even under circumstances where it is not strictly necessary.
This provides safety against system crashes during delivery.
Set the timeout on undelivered messages in the queue to the specified time.
After delivery has failed
(e.g., because of a host being down)
for this amount of time,
failed messages will be returned to the sender.
The default is three days.
Set the name of the time zone.
Set the default user id for mailers.
Run in verbose mode.
Start to automatically queue all messages when machine's the load average
exceeds the specified number.
Start to automatically reject any new SMTP connections when the machine's load
average exceeds the specified number.
Recipient priority factor. Each message's priority is increased with
points for each of its recipients.
Sets an alternate name for the NIS alias map.
Class priority factor. Each message's priority is increased with
times its class value points.
Time priority factor. Each message's priority is increased with
points each time it's processed.
the first character of a name may be
a vertical bar to cause interpretation of
the rest of the name as a command
to which to pipe the mail.
It may be necessary to quote the name
from suppressing the blanks from between arguments.
For example, a common alias is:
msgs: "|/usr/ucb/msgs -s"
Aliases may also have the syntax ``:include:filename''
to read the named file for a list of recipients.
For example, an alias such as:
for the list of addresses making up the group.
returns an exit status
describing what it did.
The codes are defined in
EX_OK Successful completion on all addresses.
EX_NOUSER User name not recognized.
EX_UNAVAILABLE Catchall meaning necessary resources
were not available.
EX_SYNTAX Syntax error in address.
EX_SOFTWARE Internal software error,
including bad arguments.
EX_OSERR Temporary operating system error,
such as ``cannot fork''.
EX_NOHOST Host name not recognized.
EX_TEMPFAIL Message could not be sent immediately,
but was queued.
If invoked as
will rebuild the alias database.
If invoked as
will print the contents of the mail queue.
/etc/sendmail/aliases raw data for alias names
/etc/sendmail/aliases.dir data base of alias names
/etc/sendmail/sendmail.cf configuration file
/usr/lib/sendmail.hf help file
/usr/lib/sendmail.st collected statistics
/usr/spool/mqueue/* temp files
binmail(1), mail(1), rmail(1),
DARPA Internet Request For Comments
RFC819, RFC821, RFC822.
Created by unroff & hp-tools.
© by Hans-Peter Bischof. All Rights Reserved (1997).
Last modified 21/April/97