Back to main site | Back to man page index

POSTFIX(1)                                     General Commands Manual                                     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 Postfix 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 Postfix instance.

       The following commands are implemented:

       check  Warn about bad directory/file ownership or permissions, 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 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 post‐
              fix-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 information that Postfix needs in  order  to  run:  add  or
              update services, and add or update configuration parameter settings.
              With Postfix 2.6 and later, this option forces the postfix(1) command to operate on the specified Post‐
              fix 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. Multiple -v options make the software increasingly  ver‐
              bose.

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 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.

       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 commands.

       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 directory.

       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.

              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 configuration 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
       $daemon_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
       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
       memcache_table(5), Postfix memcache 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
       sqlite_table(5), Postfix SQLite database driver
       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
       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

README FILES
       Use "postconf readme_directory" or "postconf html_directory" to locate this information.
       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)