source: trunk/third/sendmail/src/sendmail.0 @ 12554

Revision 12554, 17.4 KB checked in by danw, 26 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r12553, which included commits to RCS files with non-trunk default branches.
Line 
1SENDMAIL(8)               BSD System Manager's Manual              SENDMAIL(8)
2
3NNAAMMEE
4     sseennddmmaaiill - an electronic mail transport agent
5
6SSYYNNOOPPSSIISS
7     sseennddmmaaiill [_f_l_a_g_s] [_a_d_d_r_e_s_s _._._.]
8     nneewwaalliiaasseess
9     mmaaiillqq [--vv]
10
11DDEESSCCRRIIPPTTIIOONN
12     SSeennddmmaaiill sends a message to one or more _r_e_c_i_p_i_e_n_t_s, routing the message
13     over whatever networks are necessary.  SSeennddmmaaiill does internetwork for-
14     warding as necessary to deliver the message to the correct place.
15
16     SSeennddmmaaiill is not intended as a user interface routine; other programs pro-
17     vide user-friendly front ends; sseennddmmaaiill is used only to deliver pre-for-
18     matted messages.
19
20     With no flags, sseennddmmaaiill reads its standard input up to an end-of-file or
21     a line consisting only of a single dot and sends a copy of the message
22     found there to all of the addresses listed.  It determines the network(s)
23     to use based on the syntax and contents of the addresses.
24
25     Local addresses are looked up in a file and aliased appropriately.
26     Aliasing can be prevented by preceding the address with a backslash.
27     Normally the sender is not included in any alias expansions, e.g., if
28     `john' sends to `group', and `group' includes `john' in the expansion,
29     then the letter will not be delivered to `john'.
30
31   PPaarraammeetteerrss
32
33     --BB_t_y_p_e      Set the body type to _t_y_p_e. Current legal values 7BIT or
34                 8BITMIME.
35
36     --bbaa         Go into ARPANET mode.  All input lines must end with a CR-LF,
37                 and all messages will be generated with a CR-LF at the end.
38                 Also, the ``From:'' and ``Sender:'' fields are examined for
39                 the name of the sender.
40
41     --bbdd         Run as a daemon.  This requires Berkeley IPC. SSeennddmmaaiill will
42                 fork and run in background listening on socket 25 for incom-
43                 ing SMTP connections.  This is normally run from _/_e_t_c_/_r_c.
44
45     --bbDD         Same as --bbdd except runs in foreground.
46
47     --bbhh         Print the persistent host status database.
48
49     --bbHH         Purge the persistent host status database.
50
51     --bbii         Initialize the alias database.
52
53     --bbmm         Deliver mail in the usual way (default).
54
55     --bbpp         Print a listing of the queue.
56
57     --bbss         Use the SMTP protocol as described in RFC821 on standard in-
58                 put and output.  This flag implies all the operations of the
59                 --bbaa flag that are compatible with SMTP.
60
61     --bbtt         Run in address test mode.  This mode reads addresses and
62                 shows the steps in parsing; it is used for debugging configu-
63                 ration tables.
64
65     --bbvv         Verify names only - do not try to collect or deliver a mes-
66                 sage.  Verify mode is normally used for validating users or
67                 mailing lists.
68
69     --CC_f_i_l_e      Use alternate configuration file.  SSeennddmmaaiill refuses to run as
70                 root if an alternate configuration file is specified.
71
72     --dd_X         Set debugging value to _X.
73
74     --FF_f_u_l_l_n_a_m_e  Set the full name of the sender.
75
76     --ff_n_a_m_e      Sets the name of the ``from'' person (i.e., the sender of the
77                 mail).  --ff can only be used by ``trusted'' users (normally
78                 _r_o_o_t, _d_a_e_m_o_n, and _n_e_t_w_o_r_k) or if the person you are trying to
79                 become is the same as the person you are.
80
81     --hh_N         Set the hop count to _N. The hop count is incremented every
82                 time the mail is processed.  When it reaches a limit, the
83                 mail is returned with an error message, the victim of an
84                 aliasing loop.  If not specified, ``Received:'' lines in the
85                 message are counted.
86
87     --ii          Ignore dots alone on lines by themselves in incoming mes-
88                 sages.  This should be set if you are reading data from a
89                 file.
90
91     --NN _d_s_n      Set delivery status notification conditions to _d_s_n_, which can
92                 be `never' for no notifications or a comma separated list of
93                 the values `failure' to be notified if delivery failed,
94                 `delay' to be notified if delivery is delayed, and `success'
95                 to be notified when the message is successfully delivered.
96
97     --nn          Don't do aliasing.
98
99     --OO _o_p_t_i_o_n=_v_a_l_u_e
100                 Set option _o_p_t_i_o_n to the specified _v_a_l_u_e. This form uses long
101                 names.  See below for more details.
102
103     --oo_x _v_a_l_u_e   Set option _x to the specified _v_a_l_u_e. This form uses single
104                 character names only.  The short names are not described in
105                 this manual page; see the _S_e_n_d_m_a_i_l _I_n_s_t_a_l_l_a_t_i_o_n _a_n_d _O_p_e_r_a_t_i_o_n
106                 _G_u_i_d_e for details.
107
108     --pp_p_r_o_t_o_c_o_l  Set the name of the protocol used to receive the message.
109                 This can be a simple protocol name such as ``UUCP'' or a pro-
110                 tocol and hostname, such as ``UUCP:ucbvax''.
111
112     --qq[_t_i_m_e]    Processed saved messages in the queue at given intervals.  If
113                 _t_i_m_e is omitted, process the queue once.  Time is given as a
114                 tagged number, with `s' being seconds, `m' being minutes, `h'
115                 being hours, `d' being days, and `w' being weeks.  For exam-
116                 ple, `-q1h30m' or `-q90m' would both set the timeout to one
117                 hour thirty minutes.  If _t_i_m_e is specified, sseennddmmaaiill will run
118                 in background.  This option can be used safely with --bbdd.
119
120     --qqII_s_u_b_s_t_r   Limit processed jobs to those containing _s_u_b_s_t_r as a sub-
121                 string of the queue id.
122
123     --qqRR_s_u_b_s_t_r   Limit processed jobs to those containing _s_u_b_s_t_r as a sub-
124                 string of one of the recipients.
125
126     --qqSS_s_u_b_s_t_r   Limit processed jobs to those containing _s_u_b_s_t_r as a sub-
127                 string of the sender.
128
129     --RR _r_e_t_u_r_n   Set the amount of the message to be returned if the message
130                 bounces.  The _r_e_t_u_r_n parameter can be `full' to return the
131
132                 entire message or `hdrs' to return only the headers.
133
134     --rr_n_a_m_e      An alternate and obsolete form of the --ff flag.
135
136     --tt          Read message for recipients.  To:, Cc:, and Bcc: lines will
137                 be scanned for recipient addresses.  The Bcc: line will be
138                 deleted before transmission.
139
140     --UU          Initial (user) submission.  This should _a_l_w_a_y_s be set when
141                 called from a user agent such as MMaaiill or eexxmmhh and _n_e_v_e_r be
142                 set when called by a network delivery agent such as rrmmaaiill.
143
144     --VV _e_n_v_i_d    Set the original envelope id.  This is propagated across SMTP
145                 to servers that support DSNs and is returned in DSN-compliant
146                 error messages.
147
148     --vv          Go into verbose mode.  Alias expansions will be announced,
149                 etc.
150
151     --XX _l_o_g_f_i_l_e  Log all traffic in and out of mailers in the indicated log
152                 file.  This should only be used as a last resort for debug-
153                 ging mailer bugs.  It will log a lot of data very quickly.
154
155     ----          Stop processing command flags and use the rest of the argu-
156                 ments as addresses.
157
158   OOppttiioonnss
159     There are also a number of processing options that may be set.  Normally
160     these will only be used by a system administrator.  Options may be set
161     either on the command line using the --oo flag (for short names), the --OO
162     flag (for long names), or in the configuration file.  This is a partial
163     list limited to those options that are likely to be useful on the command
164     line and only shows the long names; for a complete list (and details),
165     consult the _S_e_n_d_m_a_i_l _I_n_s_t_a_l_l_a_t_i_o_n _a_n_d _O_p_e_r_a_t_i_o_n _G_u_i_d_e. The options are:
166
167     AliasFile=_f_i_l_e
168                 Use alternate alias file.
169
170     HoldExpensive
171                 On mailers that are considered ``expensive'' to connect to,
172                 don't initiate immediate connection.  This requires queueing.
173
174     CheckpointInterval=_N
175                 Checkpoint the queue file after every _N successful deliveries
176                 (default 10).  This avoids excessive duplicate deliveries
177                 when sending to long mailing lists interrupted by system
178                 crashes.
179
180     DeliveryMode=_x
181                 Set the delivery mode to _x. Delivery modes are `i' for inter-
182                 active (synchronous) delivery, `b' for background (asyn-
183                 chronous) delivery, `q' for queue only - i.e., actual deliv-
184                 ery is done the next time the queue is run, and `d' for de-
185                 ferred - the same as `q' except that database lookups (no-
186                 tably DNS and NIS lookups) are avoided.
187
188     ErrorMode=_x
189                 Set error processing to mode _x. Valid modes are `m' to mail
190                 back the error message, `w' to ``write'' back the error mes-
191                 sage (or mail it back if the sender is not logged in), `p' to
192                 print the errors on the terminal (default), `q' to throw away
193                 error messages (only exit status is returned), and `e' to do
194                 special processing for the BerkNet.  If the text of the mes-
195                 sage is not mailed back by modes `m' or `w' and if the sender
196                 is local to this machine, a copy of the message is appended
197
198                 to the file _d_e_a_d_._l_e_t_t_e_r in the sender's home directory.
199
200     SaveFromLine
201                 Save UNIX-style From lines at the front of messages.
202
203     MaxHopCount= _N
204                 The maximum number of times a message is allowed to ``hop''
205                 before we decide it is in a loop.
206
207     IgnoreDots  Do not take dots on a line by themselves as a message termi-
208                 nator.
209
210     SendMimeErrors
211                 Send error messages in MIME format.  If not set, the DSN (De-
212                 livery Status Notification) SMTP extension is disabled.
213
214     ConnectionCacheTimeout=_t_i_m_e_o_u_t
215                 Set connection cache timeout.
216
217     ConnectionCacheSize=_N
218                 Set connection cache size.
219
220     LogLevel=_n  The log level.
221
222     MeToo       Send to ``me'' (the sender) also if I am in an alias expan-
223                 sion.
224
225     CheckAliases
226                 Validate the right hand side of aliases during a newalias-
227                 es(1) command.
228
229     OldStyleHeaders
230                 If set, this message may have old style headers.  If not set,
231                 this message is guaranteed to have new style headers (i.e.,
232                 commas instead of spaces between addresses).  If set, an
233                 adaptive algorithm is used that will correctly determine the
234                 header format in most cases.
235
236     QueueDirectory=_q_u_e_u_e_d_i_r
237                 Select the directory in which to queue messages.
238
239     StatusFile=_f_i_l_e
240                 Save statistics in the named file.
241
242     Timeout.queuereturn=_t_i_m_e
243                 Set the timeout on undelivered messages in the queue to the
244                 specified time.  After delivery has failed (e.g., because of
245                 a host being down) for this amount of time, failed messages
246                 will be returned to the sender.  The default is five days.
247
248     UserDatabaseSpec=_u_s_e_r_d_a_t_a_b_a_s_e
249                 If set, a user database is consulted to get forwarding infor-
250                 mation.  You can consider this an adjunct to the aliasing
251                 mechanism, except that the database is intended to be dis-
252                 tributed; aliases are local to a particular host.  This may
253                 not be available if your sendmail does not have the USERDB
254                 option compiled in.
255
256     ForkEachJob
257                 Fork each job during queue runs.  May be convenient on memo-
258                 ry-poor machines.
259
260     SevenBitInput
261                 Strip incoming messages to seven bits.
262
263     EightBitMode=_m_o_d_e
264                 Set the handling of eight bit input to seven bit destinations
265                 to _m_o_d_e: m (mimefy) will convert to seven-bit MIME format, p
266                 (pass) will pass it as eight bits (but violates protocols),
267                 and s (strict) will bounce the message.
268
269     MinQueueAge=_t_i_m_e_o_u_t
270                 Sets how long a job must ferment in the queue between at-
271                 tempts to send it.
272
273     DefaultCharSet=_c_h_a_r_s_e_t
274                 Sets the default character set used to label 8-bit data that
275                 is not otherwise labelled.
276
277     DialDelay=_s_l_e_e_p_t_i_m_e
278                 If opening a connection fails, sleep for _s_l_e_e_p_t_i_m_e seconds
279                 and try again.  Useful on dial-on-demand sites.
280
281     NoRecipientAction=_a_c_t_i_o_n
282                 Set the behaviour when there are no recipient headers (To:,
283                 Cc: or Bcc:) in the message to _a_c_t_i_o_n: none leaves the mes-
284                 sage unchanged, add-to adds a To: header with the envelope
285                 recipients, add-apparently-to adds an Apparently-To: header
286                 with the envelope recipients, add-bcc adds an empty Bcc:
287                 header, and add-to-undisclosed adds a header reading `To:
288                 undisclosed-recipients:;'.
289
290     MaxDaemonChildren=_N
291                 Sets the maximum number of children that an incoming SMTP
292                 daemon will allow to spawn at any time to _N.
293
294     ConnectionRateThrottle=_N
295                 Sets the maximum number of connections per second to the SMTP
296                 port to _N.
297
298     In aliases, the first character of a name may be a vertical bar to cause
299     interpretation of the rest of the name as a command to pipe the mail to.
300     It may be necessary to quote the name to keep sseennddmmaaiill from suppressing
301     the blanks from between arguments.  For example, a common alias is:
302
303           msgs: "|/usr/bin/msgs -s"
304
305     Aliases may also have the syntax ``:include:_f_i_l_e_n_a_m_e'' to ask sendmail to
306     read the named file for a list of recipients.  For example, an alias such
307     as:
308
309           poets: ":include:/usr/local/lib/poets.list"
310
311     would read _/_u_s_r_/_l_o_c_a_l_/_l_i_b_/_p_o_e_t_s_._l_i_s_t for the list of addresses making up
312     the group.
313
314     SSeennddmmaaiill returns an exit status describing what it did.  The codes are
315     defined in <_s_y_s_e_x_i_t_s_._h>:
316           EX_OK           Successful completion on all addresses.
317           EX_NOUSER       User name not recognized.
318           EX_UNAVAILABLE  Catchall meaning necessary resources were not
319                           available.
320           EX_SYNTAX       Syntax error in address.
321           EX_SOFTWARE     Internal software error, including bad arguments.
322           EX_OSERR        Temporary operating system error, such as ``cannot
323                           fork''.
324           EX_NOHOST       Host name not recognized.
325           EX_TEMPFAIL     Message could not be sent immediately, but was
326                           queued.
327
328     If invoked as nneewwaalliiaasseess, sseennddmmaaiill will rebuild the alias database.  If
329     invoked as mmaaiillqq, sseennddmmaaiill will print the contents of the mail queue.
330
331FFIILLEESS
332     Except for the file _/_e_t_c_/_s_e_n_d_m_a_i_l_._c_f itself and the daemon process ID
333     file, the following pathnames are all specified in _/_e_t_c_/_s_e_n_d_m_a_i_l_._c_f_.
334     Thus, these values are only approximations.
335
336     /etc/aliases          raw data for alias names
337     /etc/aliases.db       data base of alias names
338     /etc/sendmail.cf      configuration file
339     /etc/sendmail.hf      help file
340     /var/log/sendmail.st  collected statistics
341     /var/spool/mqueue/*   temp files
342
343SSEEEE AALLSSOO
344     binmail(1),  mail(1),  rmail(1),  syslog(3),  aliases(5),  mailaddr(7),
345     rc(8);
346
347     DARPA Internet Request For Comments _R_F_C_8_1_9, _R_F_C_8_2_1, _R_F_C_8_2_2.
348
349     _S_e_n_d_m_a_i_l _- _A_n _I_n_t_e_r_n_e_t_w_o_r_k _M_a_i_l _R_o_u_t_e_r, No. 9, SMM.
350
351     _S_e_n_d_m_a_i_l _I_n_s_t_a_l_l_a_t_i_o_n _a_n_d _O_p_e_r_a_t_i_o_n _G_u_i_d_e, No. 8, SMM.
352
353HHIISSTTOORRYY
354     The sseennddmmaaiill command appeared in 4.2BSD.
355
3564th Berkeley Distribution       August 2, 1998                               6
Note: See TracBrowser for help on using the repository browser.