sendmail.8
上传用户:xu_441
上传日期:2007-01-04
资源大小:1640k
文件大小:15k
- ." Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers.
- ." All rights reserved.
- ." Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved.
- ." Copyright (c) 1988, 1991, 1993
- ." The Regents of the University of California. All rights reserved.
- ."
- ." By using this file, you agree to the terms and conditions set
- ." forth in the LICENSE file which can be found at the top level of
- ." the sendmail distribution.
- ."
- ."
- ." $Id: sendmail.8,v 8.34 1999/12/03 23:39:38 ca Exp $
- ."
- .TH SENDMAIL 8 "$Date: 1999/12/03 23:39:38 $"
- .SH NAME
- .B sendmail
- - an electronic mail transport agent
- .SH SYNOPSIS
- .B sendmail
- .RI [ flags "] [" "address ..." ]
- .br
- .B newaliases
- .br
- .B mailq
- .RB [ -v ]
- .br
- .B hoststat
- .br
- .B purgestat
- .br
- .B smtpd
- .SH DESCRIPTION
- .B Sendmail
- sends a message to one or more
- .I recipients,
- routing the message over whatever networks
- are necessary.
- .B Sendmail
- does internetwork forwarding as necessary
- to deliver the message to the correct place.
- .PP
- .B Sendmail
- is not intended as a user interface routine;
- other programs provide user-friendly
- front ends;
- .B sendmail
- is used only to deliver pre-formatted messages.
- .PP
- With no flags,
- .B sendmail
- 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.
- .PP
- Local addresses are looked up in a file
- and aliased appropriately.
- Aliasing can be prevented by preceding the address
- with a backslash.
- Beginning with 8.10, the sender is included in any alias
- expansions, e.g.,
- if `john' sends to `group',
- and `group' includes `john' in the expansion,
- then the letter will also be delivered to `john'.
- .SS Parameters
- .TP
- .BI -B type
- Set the body type to
- .IR type .
- Current legal values are
- 7BIT
- or
- 8BITMIME.
- .TP
- .B -ba
- 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.
- Also,
- the ``From:'' and ``Sender:''
- fields are examined for the name of the sender.
- .TP
- .B -bd
- Run as a daemon. This requires Berkeley
- IPC.
- .B Sendmail
- will fork and run in background
- listening on socket 25 for incoming
- SMTP
- connections.
- This is normally run from
- /etc/rc.
- .TP
- .B -bD
- Same as
- .B -bd
- except runs in foreground.
- .TP
- .B -bh
- Print the persistent host status database.
- .TP
- .B -bH
- Purge expired entries from the persistent host status database.
- .TP
- .B -bi
- Initialize the alias database.
- .TP
- .B -bm
- Deliver mail in the usual way (default).
- .TP
- .B -bp
- Print a listing of the queue.
- .TP
- .B -bs
- Use the
- SMTP
- protocol as described in
- RFC821
- on standard input and output.
- This flag implies all the operations of the
- .B -ba
- flag that are compatible with
- SMTP.
- .TP
- .B -bt
- Run in address test mode.
- This mode reads addresses and shows the steps in parsing;
- it is used for debugging configuration tables.
- .TP
- .B -bv
- Verify names only - do not try to collect or deliver a message.
- Verify mode is normally used for validating
- users or mailing lists.
- .TP
- .BI -C file
- Use alternate configuration file.
- .B Sendmail
- refuses to run as root if an alternate configuration file is specified.
- .TP
- .BI -d X
- Set debugging value to
- .IR X .
- .ne 1i
- .TP
- .BI -F fullname
- Set the full name of the sender.
- .TP
- .BI -f name
- Sets the name of the ``from'' person
- (i.e., the envelope sender of the mail).
- .B -f
- should only be used
- by ``trusted'' users
- (normally
- .IR root ", " daemon ,
- and
- .IR network )
- or if the person you are trying to become
- is the same as the person you are.
- Otherwise,
- an X-Authentication-Warning header
- will be added to the message.
- .TP
- .BI -h N
- Set the hop count to
- .IR N .
- The hop count is incremented every time the mail is
- processed.
- 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.
- .TP
- .B -i
- Ignore dots alone on lines by themselves in incoming messages.
- This should be set if you are reading data from a file.
- .TP
- .BI "-L " tag
- Set the identifier used in syslog messages to the supplied
- .IR tag .
- .TP
- .BI "-N " dsn
- Set delivery status notification conditions to
- .IR dsn ,
- which can be
- `never'
- for no notifications
- or a comma separated list of the values
- `failure'
- to be notified if delivery failed,
- `delay'
- to be notified if delivery is delayed, and
- `success'
- to be notified when the message is successfully delivered.
- .TP
- .B -n
- Don't do aliasing.
- .TP
- fB-OfP fIoptionfR=fIvaluefR
- Set option
- .I option
- to the specified
- .IR value .
- This form uses long names. See below for more details.
- .TP
- .BI -o "x value"
- Set option
- .I x
- to the specified
- .IR value .
- This form uses single character names only.
- The short names are not described in this manual page;
- see the
- .I "Sendmail Installation and Operation Guide"
- for details.
- .TP
- .BI -p protocol
- Set the name of the protocol used to receive the message.
- This can be a simple protocol name such as ``UUCP''
- or a protocol and hostname, such as ``UUCP:ucbvax''.
- .TP
- fB-qfR[fItimefR]
- Processed saved messages in the queue at given intervals.
- If
- .I time
- is omitted, process the queue once.
- .I Time
- is given as a tagged number,
- with
- `s'
- being seconds,
- `m'
- being minutes,
- `h'
- being hours,
- `d'
- being days,
- and
- `w'
- being weeks.
- For example,
- `-q1h30m'
- or
- `-q90m'
- would both set the timeout to one hour thirty minutes.
- If
- .I time
- is specified,
- .B sendmail
- will run in the background.
- This option can be used safely with
- .BR -bd .
- .TP
- .BI -qI substr
- Limit processed jobs to those containing
- .I substr
- as a substring of the queue id.
- .TP
- .BI -qR substr
- Limit processed jobs to those containing
- .I substr
- as a substring of one of the recipients.
- .TP
- .BI -qS substr
- Limit processed jobs to those containing
- .I substr
- as a substring of the sender.
- .TP
- .BI "-R " return
- Set the amount of the message to be returned
- if the message bounces.
- The
- .I return
- parameter can be
- `full'
- to return the entire message or
- `hdrs'
- to return only the headers.
- In the latter case also local bounces return only the headers.
- .TP
- .BI -r name
- An alternate and obsolete form of the
- .B -f
- flag.
- .TP
- .B -t
- Read message for recipients.
- To:, Cc:, and Bcc: lines will be scanned for recipient addresses.
- The Bcc: line will be deleted before transmission.
- .TP
- .B -U
- Initial (user) submission. This should
- .I always
- be set when called from a user agent such as
- .B Mail
- or
- .B exmh
- and
- .I never
- be set when called by a network delivery agent such as
- .BR rmail .
- .TP
- .BI "-V " envid
- Set the original envelope id.
- This is propagated across SMTP to servers that support DSNs
- and is returned in DSN-compliant error messages.
- .TP
- .B -v
- Go into verbose mode.
- Alias expansions will be announced, etc.
- .TP
- .BI "-X " logfile
- Log all traffic in and out of mailers in the indicated log file.
- This should only be used as a last resort
- for debugging mailer bugs.
- It will log a lot of data very quickly.
- .TP
- .B --
- Stop processing command flags and use the rest of the arguments as
- addresses.
- .SS Options
- 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
- using the
- .B -o
- flag (for short names), the
- .B -O
- flag (for long names),
- or in the configuration file.
- This is a partial list limited to those options that are likely to be useful
- on the command line
- and only shows the long names;
- for a complete list (and details), consult the
- .IR "Sendmail Installation and Operation Guide" .
- The options are:
- .TP
- .RI AliasFile= file
- Use alternate alias file.
- .TP
- HoldExpensive
- On mailers that are considered ``expensive'' to connect to,
- don't initiate immediate connection.
- This requires queueing.
- .TP
- .RI CheckpointInterval= N
- Checkpoint the queue file after every
- .I N
- successful deliveries (default 10).
- This avoids excessive duplicate deliveries
- when sending to long mailing lists
- interrupted by system crashes.
- .ne 1i
- .TP
- .RI DeliveryMode= x
- Set the delivery mode to
- .IR x .
- 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, and
- `d'
- for deferred - the same as
- `q'
- except that database lookups for maps which have set the -D option
- (default for the host map) are avoided.
- .TP
- .RI ErrorMode= x
- Set error processing to mode
- .IR x .
- 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
- (default),
- `q'
- to throw away error messages
- (only exit status is returned),
- and
- `e'
- to do special processing for the BerkNet.
- If the text of the message is not mailed back
- by
- modes
- `m'
- or
- `w'
- and if the sender is local to this machine,
- a copy of the message is appended to the file
- .I dead.letter
- in the sender's home directory.
- .TP
- SaveFromLine
- Save
- UNIX-style
- From lines at the front of messages.
- .TP
- .RI MaxHopCount= N
- The maximum number of times a message is allowed to ``hop''
- before we decide it is in a loop.
- .TP
- IgnoreDots
- Do not take dots on a line by themselves
- as a message terminator.
- .TP
- SendMimeErrors
- Send error messages in MIME format.
- If not set, the DSN (Delivery Status Notification) SMTP extension
- is disabled.
- .TP
- .RI ConnectionCacheTimeout= timeout
- Set connection cache timeout.
- .TP
- .RI ConnectionCacheSize= N
- Set connection cache size.
- .TP
- .RI LogLevel= n
- The log level.
- .TP
- .RI MeToo= False
- Don't send to ``me'' (the sender) if I am in an alias expansion.
- .TP
- CheckAliases
- Validate the right hand side of aliases during a
- newaliases(1)
- command.
- .TP
- OldStyleHeaders
- 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.
- .TP
- .RI QueueDirectory= queuedir
- Select the directory in which to queue messages.
- .TP
- .RI StatusFile= file
- Save statistics in the named file.
- .TP
- .RI Timeout.queuereturn= time
- 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 five days.
- .TP
- .RI UserDatabaseSpec= userdatabase
- If set, a user database is consulted to get forwarding information.
- You can consider this an adjunct to the aliasing mechanism,
- except that the database is intended to be distributed;
- aliases are local to a particular host.
- This may not be available if your sendmail does not have the
- USERDB
- option compiled in.
- .TP
- ForkEachJob
- Fork each job during queue runs.
- May be convenient on memory-poor machines.
- .TP
- SevenBitInput
- Strip incoming messages to seven bits.
- .TP
- .RI EightBitMode= mode
- Set the handling of eight bit input to seven bit destinations to
- .IR mode :
- m
- (mimefy) will convert to seven-bit MIME format,
- p
- (pass) will pass it as eight bits (but violates protocols),
- and
- s
- (strict) will bounce the message.
- .TP
- .RI MinQueueAge= timeout
- Sets how long a job must ferment in the queue between attempts to send it.
- .TP
- .RI DefaultCharSet= charset
- Sets the default character set used to label 8-bit data
- that is not otherwise labelled.
- .TP
- .RI DialDelay= sleeptime
- If opening a connection fails,
- sleep for
- .I sleeptime
- seconds and try again.
- Useful on dial-on-demand sites.
- .TP
- .RI NoRecipientAction= action
- Set the behaviour when there are no recipient headers (To:, Cc: or
- Bcc:) in the message to
- .IR action :
- none
- leaves the message unchanged,
- add-to
- adds a To: header with the envelope recipients,
- add-apparently-to
- adds an Apparently-To: header with the envelope recipients,
- add-bcc
- adds an empty Bcc: header, and
- add-to-undisclosed
- adds a header reading
- `To: undisclosed-recipients:;'.
- .TP
- .RI MaxDaemonChildren= N
- Sets the maximum number of children that an incoming SMTP daemon
- will allow to spawn at any time to
- .IR N .
- .TP
- .RI ConnectionRateThrottle= N
- Sets the maximum number of connections per second to the SMTP port to
- .IR N .
- .PP
- In aliases,
- the first character of a name may be
- a vertical bar to cause interpretation of
- the rest of the name as a command
- to pipe the mail to.
- It may be necessary to quote the name
- to keep
- .B sendmail
- from suppressing the blanks from between arguments.
- For example, a common alias is:
- .IP
- msgs: "|/usr/bin/msgs -s"
- .PP
- Aliases may also have the syntax
- .RI ``:include: filename ''
- to ask
- .B sendmail
- to read the named file for a list of recipients.
- For example, an alias such as:
- .IP
- poets: ":include:/usr/local/lib/poets.list"
- .PP
- would read
- .I /usr/local/lib/poets.list
- for the list of addresses making up the group.
- .PP
- .B Sendmail
- returns an exit status
- describing what it did.
- The codes are defined in
- .RI < sysexits.h >:
- .TP
- EX_OK
- Successful completion on all addresses.
- .TP
- EX_NOUSER
- User name not recognized.
- .TP
- EX_UNAVAILABLE
- Catchall meaning necessary resources
- were not available.
- .TP
- EX_SYNTAX
- Syntax error in address.
- .TP
- EX_SOFTWARE
- Internal software error,
- including bad arguments.
- .TP
- EX_OSERR
- Temporary operating system error,
- such as
- ``cannot fork''.
- .TP
- EX_NOHOST
- Host name not recognized.
- .TP
- EX_TEMPFAIL
- Message could not be sent immediately,
- but was queued.
- .PP
- If invoked as
- .BR newaliases ,
- .B sendmail
- will rebuild the alias database. If invoked as
- .BR mailq ,
- .B sendmail
- will print the contents of the mail queue.
- If invoked as
- .BR hoststat ,
- .B sendmail
- will print the persistent host status database.
- If invoked as
- .BR purgestat ,
- .B sendmail
- will purge expired entries from the persistent host status database.
- If invoked as
- .BR smtpd ,
- .B sendmail
- will act as a daemon, as if the
- .B -bd
- option were specified.
- .SH NOTES
- .B sendmail
- often gets blamed for many problems
- that are actually the result of other problems,
- such as overly permissive modes on directories.
- For this reason,
- .B sendmail
- checks the modes on system directories and files
- to determine if they can be trusted.
- Although these checks can be turned off
- and your system security reduced by setting the
- .BR DontBlameSendmail
- option,
- the permission problems should be fixed.
- For more information, see:
- .I http://www.sendmail.org/tips/DontBlameSendmail.html
- .SH FILES
- Except for the file
- .I /etc/mail/sendmail.cf
- itself the following pathnames are all specified in
- .IR /etc/mail/sendmail.cf .
- Thus,
- these values are only approximations.
- .PP
- .TP
- /etc/mail/aliases
- raw data for alias names
- .TP
- /etc/mail/aliases.db
- data base of alias names
- .TP
- /etc/mail/sendmail.cf
- configuration file
- .TP
- /etc/mail/helpfile
- help file
- .TP
- /etc/mail/statistics
- collected statistics
- .TP
- /var/spool/mqueue/*
- temp files
- .SH SEE ALSO
- binmail(1),
- mail(1),
- rmail(1),
- syslog(3),
- aliases(5),
- mailaddr(7),
- rc(8)
- .PP
- DARPA
- Internet Request For Comments
- .IR RFC819 ,
- .IR RFC821 ,
- .IR RFC822 .
- .IR "Sendmail - An Internetwork Mail Router" ,
- No. 9, SMM.
- .IR "Sendmail Installation and Operation Guide" ,
- No. 8, SMM.
- .PP
- http://www.sendmail.org/
- .SH HISTORY
- The
- .B sendmail
- command appeared in
- 4.2BSD.