SENDMAIL(1) SENDMAIL(1)
NAME
sendmail - Postfix to Sendmail compatibility interface
SYNOPSIS
sendmail [option ...] [recipient ...]
mailq
sendmail -bp
newaliases
sendmail -I
DESCRIPTION
The Postfix sendmail(1) command implements the Postfix to Sendmail com
patibility interface. For the sake of compatibility with existing
applications, some Sendmail command-line options are recognized but
silently ignored.
By default, Postfix sendmail(1) reads a message from standard input
until EOF or until it reads a line with only a . character, and
arranges for delivery. Postfix sendmail(1) relies on the postdrop(1)
command to create a queue file in the maildrop directory.
Specific command aliases are provided for other common modes of opera
tion:
mailq List the mail queue. Each entry shows the queue file ID, message
size, arrival time, sender, and the recipients that still need
to be delivered. If mail could not be delivered upon the last
attempt, the reason for failure is shown. This mode of operation
is implemented by executing the postqueue(1) command.
newaliases
Initialize the alias database. If no input file is specified
(with the -oA option, see below), the program processes the
file(s) specified with the alias_database configuration parame
ter. If no alias database type is specified, the program uses
the type specified with the default_database_type configuration
parameter. This mode of operation is implemented by running the
postalias(1) command.
Note: it may take a minute or so before an alias database update
becomes visible. Use the "postfix reload" command to eliminate
this delay.
These and other features can be selected by specifying the appropriate
combination of command-line options. Some features are controlled by
parameters in the main.cf configuration file.
The following options are recognized:
-Am (ignored)
-Ac (ignored)
Postfix sendmail uses the same configuration file regardless of
whether or not a message is an initial submission.
-B body_type
The message body MIME type: 7BIT or 8BITMIME.
-bd Go into daemon mode. This mode of operation is implemented by
executing the "postfix start" command.
-bh (ignored)
-bH (ignored)
Postfix has no persistent host status database.
-bi Initialize alias database. See the newaliases command above.
-bm Read mail from standard input and arrange for delivery. This is
the default mode of operation.
-bp List the mail queue. See the mailq command above.
-bs Stand-alone SMTP server mode. Read SMTP commands from standard
input, and write responses to standard output. In stand-alone
SMTP server mode, mail relaying and other access controls are
disabled by default. To enable them, run the process as the
mail_owner user.
This mode of operation is implemented by running the smtpd(8)
daemon.
-bv Do not collect or deliver a message. Instead, send an email
report after verifying each recipient address. This is useful
for testing address rewriting and routing configurations.
This feature is available in Postfix version 2.1 and later.
-C config_file
-C config_dir
The path name of the Postfix main.cf file, or of its parent
directory. This information is ignored with Postfix versions
before 2.3.
With all Postfix versions, you can specify a directory pathname
with the MAIL_CONFIG environment variable to override the loca
tion of configuration files.
-F full_name
Set the sender full name. This overrides the NAME environment
variable, and is used only with messages that have no From: mes
sage header.
-f sender
Set the envelope sender address. This is the address where
delivery problems are sent to. With Postfix versions before 2.1,
the Errors-To: message header overrides the error return
address.
-G Gateway (relay) submission, as opposed to initial user submis
sion. Either do not rewrite addresses at all, or update incom
plete addresses with the domain information specified with
remote_header_rewrite_domain.
This option is ignored before Postfix version 2.3.
-h hop_count (ignored)
Hop count limit. Use the hopcount_limit configuration parameter
instead.
-I Initialize alias database. See the newaliases command above.
-i When reading a message from standard input, dont treat a line
with only a . character as the end of input.
-L label (ignored)
The logging label. Use the syslog_name configuration parameter
instead.
-m (ignored)
Backwards compatibility.
-N dsn (default: delay, failure)
Delivery status notification control. Specify either a comma-
separated list with one or more of failure (send notification
when delivery fails), delay (send notification when delivery is
delayed), or success (send notification when the message is
delivered); or specify never (dont send any notifications at
all).
This feature is available in Postfix 2.3 and later.
-n (ignored)
Backwards compatibility.
-oAalias_database
Non-default alias database. Specify pathname or type:pathname.
See postalias(1) for details.
-O option=value (ignored)
Backwards compatibility.
-o7 (ignored)
-o8 (ignored)
To send 8-bit or binary content, use an appropriate MIME encap
sulation and specify the appropriate -B command-line option.
-oi When reading a message from standard input, dont treat a line
with only a . character as the end of input.
-om (ignored)
The sender is never eliminated from alias etc. expansions.
-o x value (ignored)
Set option x to value. Use the equivalent configuration parame
ter in main.cf instead.
-r sender
Set the envelope sender address. This is the address where
delivery problems are sent to. With Postfix versions before 2.1,
the Errors-To: message header overrides the error return
address.
-R return_limit (ignored)
Limit the size of bounced mail. Use the bounce_size_limit con
figuration parameter instead.
-q Attempt to deliver all queued mail. This is implemented by exe
cuting the postqueue(1) command.
Warning: flushing undeliverable mail frequently will result in
poor delivery performance of all other mail.
-qinterval (ignored)
The interval between queue runs. Use the queue_run_delay config
uration parameter instead.
-qRsite
Schedule immediate delivery of all mail that is queued for the
named site. This option accepts only site names that are
eligible for the "fast flush" service, and is implemented by
executing the postqueue(1) command. See flush(8) for more
information about the "fast flush" service.
-qSsite
This command is not implemented. Use the slower "sendmail -q"
command instead.
-t Extract recipients from message headers. These are added to any
recipients specified on the command line.
With Postfix versions prior to 2.1, this option requires that no
recipient addresses are specified on the command line.
-U (ignored)
Initial user submission.
-V envid
Specify the envelope ID for notification by servers that support
DSN.
This feature is available in Postfix 2.3 and later.
-XV (Postfix 2.2 and earlier: -V)
Variable Envelope Return Path. Given an envelope sender address
of the form owner-listname@origin, each recipient user@domain
receives mail with a personalized envelope sender address.
By default, the personalized envelope sender address is owner-
listname+user=domain@origin. The default + and = characters are
configurable with the default_verp_delimiters configuration
parameter.
-XVxy (Postfix 2.2 and earlier: -Vxy)
As -XV, but uses x and y as the VERP delimiter characters,
instead of the characters specified with the default_verp_delim
iters configuration parameter.
-v Send an email report of the first delivery attempt (Postfix ver
sions 2.1 and later). Mail delivery always happens in the back
ground. When multiple -v options are given, enable verbose log
ging for debugging purposes.
-X log_file (ignored)
Log mailer traffic. Use the debug_peer_list and debug_peer_level
configuration parameters instead.
SECURITY
By design, this program is not set-user (or group) id. However, it must
handle data from untrusted users or untrusted machines. Thus, the
usual precautions need to be taken against malicious inputs.
DIAGNOSTICS
Problems are logged to syslogd(8) and to the standard error stream.
ENVIRONMENT
MAIL_CONFIG
Directory with Postfix configuration files.
MAIL_VERBOSE (value does not matter)
Enable verbose logging for debugging purposes.
MAIL_DEBUG (value does not matter)
Enable debugging with an external command, as specified with the
debugger_command configuration parameter.
NAME The sender full name. This is used only with messages that have
no From: message header. See also the -F option above.
CONFIGURATION PARAMETERS
The following main.cf parameters are especially relevant to this pro
gram. The text below provides only a parameter summary. See post
conf(5) for more details including examples.
TROUBLE SHOOTING CONTROLS
The DEBUG_README file gives examples of how to trouble shoot a Postfix
system.
debugger_command (empty)
The external command to execute when a Postfix daemon program is
invoked with the -D option.
debug_peer_level (2)
The increment in verbose logging level when a remote client or
server matches a pattern in the debug_peer_list parameter.
debug_peer_list (empty)
Optional list of remote client or server hostname or network
address patterns that cause the verbose logging level to
increase by the amount specified in $debug_peer_level.
ACCESS CONTROLS
Available in Postfix version 2.2 and later:
authorized_flush_users (static:anyone)
List of users who are authorized to flush the queue.
authorized_mailq_users (static:anyone)
List of users who are authorized to view the queue.
authorized_submit_users (static:anyone)
List of users who are authorized to submit mail with the send
mail(1) command (and with the privileged postdrop(1) helper com
mand).
RESOURCE AND RATE CONTROLS
bounce_size_limit (50000)
The maximal amount of original message text that is sent in a
non-delivery notification.
fork_attempts (5)
The maximal number of attempts to fork() a child process.
fork_delay (1s)
The delay between attempts to fork() a child process.
hopcount_limit (50)
The maximal number of Received: message headers that is allowed
in the primary message headers.
queue_run_delay (1000s)
The time between deferred queue scans by the queue manager.
FAST FLUSH CONTROLS
The ETRN_README file describes configuration and operation details for
the Postfix "fast flush" service.
fast_flush_domains ($relay_domains)
Optional list of destinations that are eligible for per-destina
tion logfiles with mail that is queued to those destinations.
VERP CONTROLS
The VERP_README file describes configuration and operation details of
Postfix support for variable envelope return path addresses.
default_verp_delimiters (+=)
The two default VERP delimiter characters.
verp_delimiter_filter (-=+)
The characters Postfix accepts as VERP delimiter characters on
the Postfix sendmail(1) command line and in SMTP commands.
MISCELLANEOUS CONTROLS
alias_database (see postconf -d output)
The alias databases for local(8) delivery that are updated with
"newaliases" or with "sendmail -bi".
command_directory (see postconf -d output)
The location of all postfix administrative commands.
config_directory (see postconf -d output)
The default location of the Postfix main.cf and master.cf con
figuration files.
daemon_directory (see postconf -d output)
The directory with Postfix support programs and daemon programs.
default_database_type (see postconf -d output)
The default database type for use in newaliases(1), postalias(1)
and postmap(1) commands.
delay_warning_time (0h)
The time after which the sender receives the message headers of
mail that is still queued.
enable_errors_to (no)
Report mail delivery errors to the address specified with the
non-standard Errors-To: message header, instead of the envelope
sender address (this feature is removed with Postfix version
2.2, is turned off by default with Postfix version 2.1, and is
always turned on with older Postfix versions).
mail_owner (postfix)
The UNIX system account that owns the Postfix queue and most
Postfix daemon processes.
queue_directory (see postconf -d output)
The location of the Postfix top-level queue directory.
remote_header_rewrite_domain (empty)
Dont rewrite message headers from remote clients at all when
this parameter is empty; otherwise, rewrite message headers and
append the specified domain name to incomplete addresses.
syslog_facility (mail)
The syslog facility of Postfix logging.
syslog_name (postfix)
The mail system name that is prepended to the process name in
syslog records, so that "smtpd" becomes, for example, "post
fix/smtpd".
FILES
/var/spool/postfix, mail queue
/etc/postfix, configuration files
SEE ALSO
pickup(8), mail pickup daemon
qmgr(8), queue manager
smtpd(8), SMTP server
flush(8), fast flush service
postsuper(1), queue maintenance
postalias(1), create/update/query alias database
postdrop(1), mail posting utility
postfix(1), mail system control
postqueue(1), mail queue control
syslogd(8), system logging
README_FILES
Use "postconf readme_directory" or
"postconf html_directory" to locate this information.
DEBUG_README, Postfix debugging howto
ETRN_README, Postfix ETRN howto
VERP_README, Postfix VERP howto
LICENSE
The Secure Mailer license must be distributed with this software.
AUTHOR(S)
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
SENDMAIL(1)
|