NAME
postfix - Postfix control program SYNOPSIS
postfix [-Dv] [-c configdir] command DESCRIPTION This command is reserved for the superuser. To submit mail, use the Postfix sendmail(1) command. The postfix(1) command controls the operation of the Postfix mail sys‐ tem: start or stop the master(8) daemon, do a health check, and other maintenance. By default, the postfix(1) command sets up a standardized environment
and runs the postfix-script shell script to do the actual work. However, when support for multiple Postfix instances is configured, postfix(1) executes the command specified with the multiinstancewrap‐ per configuration parameter. This command will execute the command for each applicable Postfix instance. The following commands are implemented: check Warn about bad directory/file ownership or permissions, and cre‐ ate missing directories. start Start the Postfix mail system. This also runs the configuration check described above. stop Stop the Postfix mail system in an orderly fashion. If possible, running processes are allowed to terminate at their earliest convenience. Note: in order to refresh the Postfix mail system after a con‐ figuration change, do not use the start and stop commands in succession. Use the reload command instead. abort Stop the Postfix mail system abruptly. Running processes are signaled to stop immediately. flush Force delivery: attempt to deliver every message in the deferred mail queue. Normally, attempts to deliver delayed mail happen at regular intervals, the interval doubling after each failed attempt. Warning: flushing undeliverable mail frequently will result in poor delivery performance of all other mail.
reload Re-read configuration files. Running processes terminate at their earliest convenience. status Indicate if the Postfix mail system is currently running.
set-permissions [name=value ...] Set the ownership and permissions of Postfix related files and
directories, as specified in the postfix-files file. Specify name=value to override and update specific main.cf con‐ figuration parameters. Use this, for example, to change the mailowner or setgidgroup setting for an already installed Postfix system. This feature is available in Postfix 2.1 and later. With Post‐
fix 2.0 and earlier, use "$configdirectory/post-install set- permissions".
upgrade-configuration [name=value ...] Update the main.cf and master.cf files with information that Postfix needs in order to run: add or update services, and add or update configuration parameter settings. Specify name=value to override and update specific main.cf con‐ figuration parameters. This feature is available in Postfix 2.1 and later. With Post‐
fix 2.0 and earlier, use "$configdirectory/post-install
upgrade-configuration". The following options are implemented:
-c configdir Read the main.cf and master.cf configuration files in the named directory instead of the default configuration directory. Use this to distinguish between multiple Postfix instances on the same host. With Postfix 2.6 and later, this option forces the postfix(1) command to operate on the specified Postfix instance only. This behavior is inherited by postfix(1) commands that run as a descendant of the current process.
-D (with postfix start only) Run each Postfix daemon under control of a debugger as specified via the debuggercommand configuration parameter.
-v Enable verbose logging for debugging purposes. Multiple -v options make the software increasingly verbose. ENVIRONMENT The postfix(1) command exports the following environment variables
before executing the postfix-script file: MAILCONFIG
This is set when the -c command-line option is present. With Postfix 2.6 and later, this environment variable forces the postfix(1) command to operate on the specified Postfix instance only. This behavior is inherited by postfix(1) commands that run as a descendant of the current process. MAILVERBOSE
This is set when the -v command-line option is present. MAILDEBUG
This is set when the -D command-line option is present. CONFIGURATION PARAMETERS The following main.cf configuration parameters are exported as environ‐ ment variables with the same names:
commanddirectory (see 'postconf -d' output) The location of all postfix administrative commands.
daemondirectory (see 'postconf -d' output) The directory with Postfix support programs and daemon programs.
configdirectory (see 'postconf -d' output) The default location of the Postfix main.cf and master.cf con‐ figuration files.
queuedirectory (see 'postconf -d' output)
The location of the Postfix top-level queue directory. mailowner (postfix) The UNIX system account that owns the Postfix queue and most Postfix daemon processes. setgidgroup (postdrop)
The group ownership of set-gid Postfix commands and of group- writable Postfix directories.
sendmailpath (see 'postconf -d' output) A Sendmail compatibility feature that specifies the location of the Postfix sendmail(1) command.
newaliasespath (see 'postconf -d' output) Sendmail compatibility feature that specifies the location of the newaliases(1) command.
mailqpath (see 'postconf -d' output) Sendmail compatibility feature that specifies where the Postfix mailq(1) command is installed.
htmldirectory (see 'postconf -d' output) The location of Postfix HTML files that describe how to build, configure or operate a specific Postfix subsystem or feature.
manpagedirectory (see 'postconf -d' output) Where the Postfix manual pages are installed.
readmedirectory (see 'postconf -d' output) The location of Postfix README files that describe how to build, configure or operate a specific Postfix subsystem or feature. Available in Postfix version 2.5 and later:
datadirectory (see 'postconf -d' output)
The directory with Postfix-writable data files (for example:
caches, pseudo-random numbers). Other configuration parameters:
configdirectory (see 'postconf -d' output) The default location of the Postfix main.cf and master.cf con‐ figuration files.
importenvironment (see 'postconf -d' output) The list of environment parameters that a Postfix process will
import from a non-Postfix parent process. syslogfacility (mail) The syslog facility of Postfix logging.
syslogname (see 'postconf -d' output) The mail system name that is prepended to the process name in syslog records, so that "smtpd" becomes, for example, "post‐ fix/smtpd". Available in Postfix version 2.6 and later: multiinstancedirectories (empty)
An optional list of non-default Postfix configuration directo‐ ries; these directories belong to additional Postfix instances that share the Postfix executable files and documentation with the default Postfix instance, and that are started, stopped, etc., together with the default Postfix instance. multiinstancewrapper (empty)
The pathname of a multi-instance manager command that the post‐ fix(1) command invokes when the multiinstancedirectories
parameter value is non-empty. multiinstancegroup (empty) The optional instance group name of this Postfix instance. multiinstancename (empty) The optional instance name of this Postfix instance. multiinstanceenable (no) Allow this Postfix instance to be started, stopped, etc., by a
multi-instance manager. FILES
Prior to Postfix version 2.6, all of the following files were in $con‐
figdirectory. Some files are now in $daemondirectory so that they can be shared among multiple instances that run the same Postfix version. Use the command "postconf configdirectory" or "postconf daemondirec‐ tory" to expand the names into their actual values.
$configdirectory/main.cf, Postfix configuration parameters
$configdirectory/master.cf, Postfix daemon processes
$daemondirectory/postfix-files, file/directory permissions
$daemondirectory/postfix-script, administrative commands
$daemondirectory/post-install, post-installation configuration SEE ALSO Commands: postalias(1), create/update/query alias database postcat(1), examine Postfix queue file postconf(1), Postfix configuration utility postfix(1), Postfix control program postkick(1), trigger Postfix daemon
postlock(1), Postfix-compatible locking
postlog(1), Postfix-compatible logging postmap(1), Postfix lookup table manager
postmulti(1), Postfix multi-instance manager postqueue(1), Postfix mail queue control postsuper(1), Postfix housekeeping mailq(1), Sendmail compatibility interface newaliases(1), Sendmail compatibility interface sendmail(1), Sendmail compatibility interface Postfix configuration: bounce(5), Postfix bounce message templates master(5), Postfix master.cf file syntax postconf(5), Postfix main.cf file syntax
postfix-wrapper(5), Postfix multi-instance API
Table-driven mechanisms: access(5), Postfix SMTP access control table aliases(5), Postfix alias database canonical(5), Postfix input address rewriting generic(5), Postfix output address rewriting headerchecks(5), bodychecks(5), Postfix content inspection relocated(5), Users that have moved transport(5), Postfix routing table virtual(5), Postfix virtual aliasing Table lookup mechanisms: cidrtable(5), Associate CIDR pattern with value ldaptable(5), Postfix LDAP client memcachetable(5), Postfix memcache client mysqltable(5), Postfix MYSQL client nisplustable(5), Postfix NIS+ client pcretable(5), Associate PCRE pattern with value pgsqltable(5), Postfix PostgreSQL client regexptable(5), Associate POSIX regexp pattern with value sqlitetable(5), Postfix SQLite database driver
tcptable(5), Postfix client-server table lookup Daemon processes: anvil(8), Postfix connection/rate limiting bounce(8), defer(8), trace(8), Delivery status reports cleanup(8), canonicalize and enqueue message discard(8), Postfix discard delivery agent dnsblog(8), DNS black/whitelist logger error(8), Postfix error delivery agent flush(8), Postfix fast ETRN service local(8), Postfix local delivery agent master(8), Postfix master daemon oqmgr(8), old Postfix queue manager pickup(8), Postfix local mail pickup
pipe(8), deliver mail to non-Postfix command postscreen(8), Postfix zombie blocker proxymap(8), Postfix lookup table proxy server qmgr(8), Postfix queue manager qmqpd(8), Postfix QMQP server scache(8), Postfix connection cache manager showq(8), list Postfix mail queue smtp(8), lmtp(8), Postfix SMTP+LMTP client smtpd(8), Postfix SMTP server
spawn(8), run non-Postfix server tlsmgr(8), Postfix TLS cache and randomness manager tlsproxy(8), Postfix TLS proxy server
trivial-rewrite(8), Postfix address rewriting verify(8), Postfix address verification virtual(8), Postfix virtual delivery agent Other: syslogd(8), system logging README FILES Use "postconf readmedirectory" or "postconf htmldirectory" to locate this information. OVERVIEW, overview of Postfix commands and processes BASICCONFIGURATIONREADME, Postfix basic configuration ADDRESSREWRITINGREADME, Postfix address rewriting SMTPDACCESSREADME, SMTP relay/access control CONTENTINSPECTIONREADME, Postfix content inspection QSHAPEREADME, Postfix queue analysis 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 TLS support by: Lutz Jaenicke Brandenburg University of Technology Cottbus, Germany Victor Duchovni Morgan Stanley SASL support originally by: Till Franke SuSE Rhein/Main AG 65760 Eschborn, Germany LMTP support originally by: Philip A. Prindeville Mirapoint, Inc. USA. Amos Gouaux University of Texas at Dallas P.O. Box 830688, MC34 Richardson, TX 75083, USA IPv6 support originally by: Mark Huizer, Eindhoven University, The Netherlands
Jun-ichiro 'itojun' Hagino, KAME project, Japan The Linux PLD project Dean Strik, Eindhoven University, The Netherlands POSTFIX(1)