POSTFIX(1)                                                          POSTFIX(1)

NAME
       postfix - Postfix control program

SYNOPSIS
       postfix [-Dv] [-c config_dir] 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 Post-
       fix  mail system: 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 multi_instance_wrapper configuration parameter.   This
       command will execute the command for each applicable Post-
       fix instance.

       The following commands are implemented:

       check  Warn about bad directory/file ownership or  permis-
              sions, and create 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 ter-
              minate at their earliest convenience.

              Note: in order to refresh the Postfix  mail  system
              after  a configuration change, do not use the start
              and stop commands in  succession.  Use  the  reload
              command instead.

       abort  Stop the Postfix mail system abruptly. Running pro-
              cesses 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 ter-
              minate 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 configuration  parameters.  Use  this,  for
              example,  to  change the mail_owner or setgid_group
              setting for an already installed Postfix system.

              This feature is available in Postfix 2.1 and later.
              With  Postfix  2.0 and earlier, use "$config_direc-
              tory/post-install set-permissions".

       upgrade-configuration [name=value ...]
              Update the main.cf and master.cf files with  infor-
              mation  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 configuration parameters.

              This feature is available in Postfix 2.1 and later.
              With  Postfix  2.0 and earlier, use "$config_direc-
              tory/post-install upgrade-configuration".

       The following options are implemented:

       -c config_dir
              Read the main.cf and master.cf configuration  files
              in  the named directory instead of the default con-
              figuration  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 debugger_command configuration
              parameter.

       -v     Enable verbose logging for debugging purposes. Mul-
              tiple  -v  options  make  the software increasingly
              verbose.

ENVIRONMENT
       The postfix(1) command exports the  following  environment
       variables before executing the postfix-script file:

       MAIL_CONFIG
              This  is  set  when  the  -c command-line option is
              present.

              With Postfix 2.6 and later, this environment  vari-
              able  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.

       MAIL_VERBOSE
              This is set when  the  -v  command-line  option  is
              present.

       MAIL_DEBUG
              This  is  set  when  the  -D command-line option is
              present.

CONFIGURATION PARAMETERS
       The  following  main.cf   configuration   parameters   are
       exported as environment variables with the same names:

       command_directory (see 'postconf -d' output)
              The  location  of  all  postfix administrative com-
              mands.

       daemon_directory (see 'postconf -d' output)
              The directory with  Postfix  support  programs  and
              daemon programs.

       config_directory (see 'postconf -d' output)
              The  default  location  of  the Postfix main.cf and
              master.cf configuration files.

       queue_directory (see 'postconf -d' output)
              The location of the Postfix top-level queue  direc-
              tory.

       mail_owner (postfix)
              The UNIX system account that owns the Postfix queue
              and most Postfix daemon processes.

       setgid_group (postdrop)
              The group ownership of set-gid Postfix commands and
              of group-writable Postfix directories.

       sendmail_path (see 'postconf -d' output)
              A Sendmail compatibility feature that specifies the
              location of the Postfix sendmail(1) command.

       newaliases_path (see 'postconf -d' output)
              Sendmail compatibility feature that  specifies  the
              location of the newaliases(1) command.

       mailq_path (see 'postconf -d' output)
              Sendmail compatibility feature that specifies where
              the Postfix mailq(1) command is installed.

       html_directory (see 'postconf -d' output)
              The location of Postfix HTML  files  that  describe
              how to build, configure or operate a specific Post-
              fix subsystem or feature.

       manpage_directory (see 'postconf -d' output)
              Where the Postfix manual pages are installed.

       readme_directory (see 'postconf -d' output)
              The location of Postfix README files that  describe
              how to build, configure or operate a specific Post-
              fix subsystem or feature.

       Available in Postfix version 2.5 and later:

       data_directory (see 'postconf -d' output)
              The directory with Postfix-writable data files (for
              example: caches, pseudo-random numbers).

       Other configuration parameters:

       config_directory (see 'postconf -d' output)
              The  default  location  of  the Postfix main.cf and
              master.cf configuration files.

       import_environment (see 'postconf -d' output)
              The list of environment parameters that  a  Postfix
              process  will  import  from  a  non-Postfix  parent
              process.

       syslog_facility (mail)
              The syslog facility of Postfix logging.

       syslog_name (see 'postconf -d' output)
              The mail system  name  that  is  prepended  to  the
              process  name  in  syslog  records, so that "smtpd"
              becomes, for example, "postfix/smtpd".

       Available in Postfix version 2.6 and later:

       multi_instance_directories (empty)
              An optional list of non-default Postfix  configura-
              tion directories; these directories belong to addi-
              tional 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.

       multi_instance_wrapper (empty)
              The  pathname  of  a multi-instance manager command
              that  the  postfix(1)  command  invokes  when   the
              multi_instance_directories  parameter value is non-
              empty.

       multi_instance_group (empty)
              The optional instance group name  of  this  Postfix
              instance.

       multi_instance_name (empty)
              The   optional   instance   name  of  this  Postfix
              instance.

       multi_instance_enable (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 $config_directory. Some files  are  now  in  $dae-
       mon_directory  so  that  they can be shared among multiple
       instances that run the same Postfix version.

       Use the command "postconf config_directory"  or  "postconf
       daemon_directory"  to  expand  the names into their actual
       values.

       $config_directory/main.cf, Postfix configuration parameters
       $config_directory/master.cf, Postfix daemon processes
       $daemon_directory/postfix-files, file/directory permissions
       $daemon_directory/postfix-script, administrative commands
       $daemon_directory/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
       header_checks(5), body_checks(5), Postfix content inspection
       relocated(5), Users that have moved
       transport(5), Postfix routing table
       virtual(5), Postfix virtual aliasing

       Table lookup mechanisms:
       cidr_table(5), Associate CIDR pattern with value
       ldap_table(5), Postfix LDAP client
       mysql_table(5), Postfix MYSQL client
       nisplus_table(5), Postfix NIS+ client
       pcre_table(5), Associate PCRE pattern with value
       pgsql_table(5), Postfix PostgreSQL client
       regexp_table(5), Associate POSIX regexp pattern with value
       tcp_table(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
       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
       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
       trivial-rewrite(8), Postfix address rewriting
       verify(8), Postfix address verification
       virtual(8), Postfix virtual delivery agent

       Other:
       syslogd(8), system logging

README FILES
       OVERVIEW, overview of Postfix commands and processes
       BASIC_CONFIGURATION_README, Postfix basic configuration
       ADDRESS_REWRITING_README, Postfix address rewriting
       SMTPD_ACCESS_README, SMTP relay/access control
       CONTENT_INSPECTION_README, Postfix content inspection
       QSHAPE_README, 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)