summary |
tags |
clone url |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
e69c3c9)
space it in troff
SCCS-vsn: usr.sbin/sendmail/doc/intro/intro.me 3.25
SCCS-vsn: usr.sbin/sendmail/doc/op/op.me 3.15
.nr DR 1 \" this is a draft copy
.nr si 3n
.he 'SENDMAIL''%'
.nr DR 1 \" this is a draft copy
.nr si 3n
.he 'SENDMAIL''%'
-.fo 'Version 3.24'DRAFT'Last Mod %G%'
-.ls 2
+.fo 'Version 3.25'DRAFT'Last Mod %G%'
+.if n .ls 2
(as a comment).
.np
Anything in angle brackets (\c
(as a comment).
.np
Anything in angle brackets (\c
is preferred
over anything else.
This rule implements the ARPANET standard that addresses of the form
is preferred
over anything else.
This rule implements the ARPANET standard that addresses of the form
.he 'Sendmail Installation and Operation Guide''%'
.he 'Sendmail Installation and Operation Guide''%'
-.fo 'Version 3.14'DRAFT'Last Mod %G%'
+.fo 'Version 3.15'DRAFT'Last Mod %G%'
-.b
-SENDMAIL
-INSTALLATION AND OPERATION GUIDE
+.sp
+.b "INSTALLATION AND OPERATION GUIDE"
+.sz 10
+.sp
Eric Allman
Britton-Lee, Inc.
.sp
Eric Allman
Britton-Lee, Inc.
.sp
+.sp
+.(l F
+.b NOTE:
+.i
+This is a working paper, not a specification.
+Details of operation of
+.r sendmail
+may change as necessary
+before final release.
+.)l
+.sp 2
.pp
.i Sendmail
implements a general purpose internetwork mail routing facility
.pp
.i Sendmail
implements a general purpose internetwork mail routing facility
The appendixes give a brief
but detailed explanation of a number of features
not described in the rest of the paper.
The appendixes give a brief
but detailed explanation of a number of features
not described in the rest of the paper.
+.pp
+The references in this paper are actually found
+in the companion paper
+.ul
+Sendmail \- An Internetwork Mail Router.
+This other paper should be read before this manual
+to gain a basic understanding
+of how the pieces fit together.
.sh 1 "BASIC INSTALLATION"
.pp
There are two basic steps to installing sendmail.
.sh 1 "BASIC INSTALLATION"
.pp
There are two basic steps to installing sendmail.
.i cf
of the sendmail directory.
The ones used at Berkeley are in
.i cf
of the sendmail directory.
The ones used at Berkeley are in
format;
files with names ending
.q .m4
format;
files with names ending
.q .m4
.i system
is the name of your system
(i.e., what is returned by
.i system
is the name of your system
(i.e., what is returned by
If you do not have
.i hostname
you can use the declaration
.q HOST=\fIsystem\fP
on the
If you do not have
.i hostname
you can use the declaration
.q HOST=\fIsystem\fP
on the
command line.
.pp
The basic installation procedure is to type:
command line.
.pp
The basic installation procedure is to type:
You should plan on recompiling and installing the entire system:
.(b
cd src
You should plan on recompiling and installing the entire system:
.(b
cd src
make
cp sendmail /usr/lib
.)b
make
cp sendmail /usr/lib
.)b
This can just be a link to
.i sendmail :
.(b
This can just be a link to
.i sendmail :
.(b
-rm -f /usr/ucb/newaliases
+rm \-f /usr/ucb/newaliases
ln /usr/lib/sendmail /usr/ucb/newaliases
.)b
.sh 3 "/usr/lib/sendmail.cf"
ln /usr/lib/sendmail /usr/ucb/newaliases
.)b
.sh 3 "/usr/lib/sendmail.cf"
Normally
.i sendmail
looks at a version of these files maintained by the
Normally
.i sendmail
looks at a version of these files maintained by the
routines.
These are stored in
.q /usr/lib/aliases.dir
routines.
These are stored in
.q /usr/lib/aliases.dir
cp /dev/null /usr/lib/aliases.dir
cp /dev/null /usr/lib/aliases.pag
chmod 666 /usr/lib/aliases.*
cp /dev/null /usr/lib/aliases.dir
cp /dev/null /usr/lib/aliases.pag
chmod 666 /usr/lib/aliases.*
.)b
.sh 3 "/usr/lib/sendmail.fc"
.pp
.)b
.sh 3 "/usr/lib/sendmail.fc"
.pp
describes the file(s) that sendmail will log in.
For a complete description of syslog,
see the manual page for
describes the file(s) that sendmail will log in.
For a complete description of syslog,
see the manual page for
(located in
.i sendmail/doc
on the distribution).
(located in
.i sendmail/doc
on the distribution).
.sh 2 "The System Log"
.pp
The system log is supported by the
.sh 2 "The System Log"
.pp
The system log is supported by the
program.
.sh 3 "Format"
.pp
program.
.sh 3 "Format"
.pp
.sh 3 "Levels"
.pp
If you have
.sh 3 "Levels"
.pp
If you have
or an equivalent installed,
you will be able to do logging.
There is a large amount of information that can be logged.
or an equivalent installed,
you will be able to do logging.
There is a large amount of information that can be logged.
.pp
The contents of the queue can be printed
using the
.pp
The contents of the queue can be printed
using the
+.i mailq
+command
+(or by specifying the
.)b
This will produce a listing of the queue id's,
the size of the message,
.)b
This will produce a listing of the queue id's,
the size of the message,
.sh 3 "Format of queue files"
.pp
All queue files have the form
.sh 3 "Format of queue files"
.pp
All queue files have the form
-\fIx\fP\fBf\fP\fIA99999\fP
+\fIx\fP\|\fBf\fP\fIAA99999\fP
is the
.i id
for this file
is the
.i id
for this file
Hreceived: by UCBARPA.BERKELEY.ARPA (3.227 [10/22/82])
id A13557; 23-Oct-82 15:49:32-PDT (Sat)
Hphone: (415) 548-3211
Hreceived: by UCBARPA.BERKELEY.ARPA (3.227 [10/22/82])
id A13557; 23-Oct-82 15:49:32-PDT (Sat)
Hphone: (415) 548-3211
-HTo: calder:mckusick, wnj
+HTo: mckusick@calder, wnj
.)b
This shows the name of the data file,
the person who sent the message,
.)b
This shows the name of the data file,
the person who sent the message,
are comments.
.pp
The second form is processed by the
are comments.
.pp
The second form is processed by the
library.
This form is in the files
.i /usr/lib/aliases.dir
library.
This form is in the files
.i /usr/lib/aliases.dir
The DBM version of the database
may be rebuilt explicitly by executing the command
.(b
The DBM version of the database
may be rebuilt explicitly by executing the command
.(b
+newaliases
+.)b
+This is equivalent to giving
+.i sendmail
+the
+.b \-bi
+flag:
+.(b
/usr/lib/sendmail \-bi
.)b
.pp
/usr/lib/sendmail \-bi
.)b
.pp
with a short message timeout.
For example,
.(b
with a short message timeout.
For example,
.(b
-/usr/lib/sendmail -oT1d -q
+/usr/lib/sendmail \-oT1d \-q
.)b
will run the queue
and flush anything that is one day old.
.)b
will run the queue
and flush anything that is one day old.
Mode
.q b
is probably a good compromise.
Mode
.q b
is probably a good compromise.
+However, this mode can cause large numbers of processes
+if you have a mailer that takes a long time to deliver a message.
.sh 2 "Log Level"
.pp
The level of logging can be set for sendmail.
.sh 2 "Log Level"
.pp
The level of logging can be set for sendmail.
can safely be made
setuid to root.
At the point where it is about to
can safely be made
setuid to root.
At the point where it is about to
a mailer,
it checks to see if the userid is zero;
if so,
a mailer,
it checks to see if the userid is zero;
if so,
this will cause mail processing
to be accounted
(using
this will cause mail processing
to be accounted
(using
to root
rather than to the user sending the mail.
.sh 3 "Temporary file modes"
to root
rather than to the user sending the mail.
.sh 3 "Temporary file modes"
then you must be careful to reconstruct the alias database
each time you change the text version:
.(b
then you must be careful to reconstruct the alias database
each time you change the text version:
.(b
.)b
If this step is ignored or forgotten
any intended changes will also be ignored or forgotten.
.)b
If this step is ignored or forgotten
any intended changes will also be ignored or forgotten.
+is a
+.i scanf \|(3)
+pattern
that should produce a single string.
.sh 3 "M \*- define mailer"
.pp
that should produce a single string.
.sh 3 "M \*- define mailer"
.pp
.(b
Pfirst-class=0
Pspecial-delivery=100
.(b
Pfirst-class=0
Pspecial-delivery=100
.)b
.sh 2 "The Semantics"
.pp
.)b
.sh 2 "The Semantics"
.pp
Metasyntax is introduced using a dollar sign.
The metasymbols are:
.(b
Metasyntax is introduced using a dollar sign.
The metasymbols are:
.(b
+.ta \w'\fB$=\fP\fIx\fP 'u
\fB$*\fP Match zero or more tokens
\fB$+\fP Match one or more tokens
\fB$*\fP Match zero or more tokens
\fB$+\fP Match one or more tokens
-\fB$-\fP Match exactly one token
+\fB$\-\fP Match exactly one token
\fB$=\fP\fIx\fP Match any token in class \fIx\fP
\fB$~\fP\fIx\fP Match any token not in class \fIx\fP
.)b
\fB$=\fP\fIx\fP Match any token in class \fIx\fP
\fB$~\fP\fIx\fP Match any token not in class \fIx\fP
.)b
For example,
if the LHS:
.(b
For example,
if the LHS:
.(b
.)b
is applied to the input:
.(b
.)b
is applied to the input:
.(b
.i n
syntax substitutes the corresponding value from a
.b $+ ,
.i n
syntax substitutes the corresponding value from a
.b $+ ,
This philosophy results as much from the need
to have a single source for the configuration files
(typically built using
This philosophy results as much from the need
to have a single source for the configuration files
(typically built using
or some similar tool)
as any logical need.
Maintaining more than three separate tables by hand
or some similar tool)
as any logical need.
Maintaining more than three separate tables by hand
which will cause
.i sendmail
to defer connection
which will cause
.i sendmail
to defer connection
or the
.b O
line in the configuration file:
or the
.b O
line in the configuration file:
.ip A\fIfile\fP
Use the named
.i file
.ip A\fIfile\fP
Use the named
.i file
Run in verbose mode.
.+c "MAILER FLAGS"
The following flags may be set in the mailer description.
Run in verbose mode.
.+c "MAILER FLAGS"
The following flags may be set in the mailer description.
.ip f
The mailer wants a
.b \-f
.ip f
The mailer wants a
.b \-f
If set,
you will be assumed to have a Berkeley 4BSD or 4.1BSD,
including the
If set,
you will be assumed to have a Berkeley 4BSD or 4.1BSD,
including the
system call,
special types defined in <sys/types.h>
(e.g, u_char),
etc.
system call,
special types defined in <sys/types.h>
(e.g, u_char),
etc.
-.ip NVMUNIX
-This flag indicates a new (4.2BSD) version of VMUNIX.
-Included are the new communication primitives,
-file locking,
-etc.
-If this is set,
-VMUNIX must also be set.
.lp
If none of these flags are set,
a version 7 system is assumed.
.lp
If none of these flags are set,
a version 7 system is assumed.
are included in this file.
The numbers following the parameters
are their default value.
are included in this file.
The numbers following the parameters
are their default value.
.ip "MAXLINE [256]"
The maximum line length of any input line.
If message lines exceed this length
.ip "MAXLINE [256]"
The maximum line length of any input line.
If message lines exceed this length
.lp
A number of other compilation options exist.
These specify whether or not specific code should be compiled in.
.lp
A number of other compilation options exist.
These specify whether or not specific code should be compiled in.
.i HdrInfo
specification:
.(b
.i HdrInfo
specification:
.(b
.ta 4n +\w'"return-receipt-to", 'u
struct hdrinfo HdrInfo[] =
{
.ta 4n +\w'"return-receipt-to", 'u
struct hdrinfo HdrInfo[] =
{
.)b
This structure indicates that the
.q To: ,
.)b
This structure indicates that the
.q To: ,
also contains the specification of ARPANET reply codes.
There are four classifications these fall into:
.(b
also contains the specification of ARPANET reply codes.
There are four classifications these fall into:
.(b
.ta \w'char 'u +\w'Arpa_TUsrerr[] = 'u +\w'"888"; 'u
char Arpa_Info[] = "050"; /* arbitrary info */
char Arpa_TSyserr[] = "455"; /* some (transient) system error */
.ta \w'char 'u +\w'Arpa_TUsrerr[] = 'u +\w'"888"; 'u
char Arpa_Info[] = "050"; /* arbitrary info */
char Arpa_TSyserr[] = "455"; /* some (transient) system error */
.ta 4n +4n +4n +4n +4n +4n +4n
bool
checkcompat(to)
.ta 4n +4n +4n +4n +4n +4n +4n
bool
checkcompat(to)
.ip /usr/bin/newaliases
A link to /usr/lib/sendmail;
causes the alias database to be rebuilt.
.ip /usr/bin/newaliases
A link to /usr/lib/sendmail;
causes the alias database to be rebuilt.
+Running this program is completely equivalent to giving
+.i sendmail
+the
+.b \-bi
+flag.
.ip /usr/bin/mailq
Prints a listing of the mail queue.
.ip /usr/bin/mailq
Prints a listing of the mail queue.
+This program is equivalent to using the
+.b \-bp
+flag to
+.i sendmail .
.ip /usr/lib/sendmail.cf
The configuration file,
in textual form.
.ip /usr/lib/sendmail.cf
The configuration file,
in textual form.
The textual version of the alias file.
.ip /usr/lib/aliases.{pag,dir}
The alias file in
The textual version of the alias file.
.ip /usr/lib/aliases.{pag,dir}
The alias file in
format.
.ip /etc/syslog
The program to do logging.
format.
.ip /etc/syslog
The program to do logging.
-.sz 16
-SENDMAIL
-.sz 12
+.sz 24
+.b SENDMAIL
+.sz 14
.sp
INSTALLATION AND OPERATION GUIDE
.sp
.sp
INSTALLATION AND OPERATION GUIDE
.sp
Eric Allman
Britton-Lee, Inc.
.sp
Eric Allman
Britton-Lee, Inc.
.sp
+Version 3.15
+.sp 2
+.sz 14
+DRAFT
.sp 2
.\" remove some things to avoid "out of temp file space" problem
.rm sh
.sp 2
.\" remove some things to avoid "out of temp file space" problem
.rm sh