# man > mailq(1)

[_SENDMAIL_(1)](https://www.chedong.com/phpMan.php/man/SENDMAIL/1/markdown)                            General Commands Manual                           [_SENDMAIL_(1)](https://www.chedong.com/phpMan.php/man/SENDMAIL/1/markdown)

## NAME
       sendmail - Postfix to Sendmail compatibility interface

## SYNOPSIS
       **sendmail **[_option_ _..._] [_recipient_ _..._]

### mailq
### sendmail -bp

### newaliases
### sendmail -I

## DESCRIPTION
       The  Postfix  [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown) command implements the Postfix to Sendmail compatibility interface.
       For the sake of compatibility with existing applications, some Sendmail command-line  options
       are recognized but silently ignored.

       By  default,  Postfix  [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown)  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)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown)  relies
       on the [**postdrop**(1)](https://www.chedong.com/phpMan.php/man/postdrop/1/markdown) command to create a queue file in the **maildrop **directory.

       Specific command aliases are provided for other common modes of operation:

       **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  de‐
              livered upon the last attempt, the reason for failure is shown. The queue ID string is
              followed by an optional status character:

              ***      **The message is in the **active **queue, i.e. the message is selected for delivery.

              **!      **The message is in the **hold **queue, i.e. no further delivery attempt will be made
                     until the mail is taken off hold.

              **#      **The message is forced to expire. See the [**postsuper**(1)](https://www.chedong.com/phpMan.php/man/postsuper/1/markdown) options **-e **or **-f**.

              This mode of operation is implemented by executing the [**postqueue**(1)](https://www.chedong.com/phpMan.php/man/postqueue/1/markdown) 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  **con‐
              figuration  parameter.   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)](https://www.chedong.com/phpMan.php/man/postalias/1/markdown) 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  com‐
       mand-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  mes‐
              sage is an initial submission.

### -B _
              The message body MIME type: **7BIT **or **8BITMIME**.

### -bd    
              **start**" command.

### -bh (ignored)

### -bH (ignored)
              Postfix has no persistent host status database.

### -bi    

### -bl     -bl  
              specify "**inet_interfaces = loopback**" in the Postfix **main.cf **configuration file.

### -bm    
              operation.

### -bp    

### -bs    
              sponses  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)](https://www.chedong.com/phpMan.php/man/smtpd/8/markdown) daemon.

### -bv    
              each recipient address.  This is useful for testing address rewriting and routing con‐
              figurations.

              This feature is available in Postfix version 2.1 and later.

### -C _

### -C _
              The path name of the Postfix **main.cf **file, or of its parent directory.  This  informa‐
              tion is ignored with Postfix versions before 2.3.

              With  Postfix version 3.2 and later, a non-default directory must be authorized in the
              default **main.cf **file, through the alternate_config_directories  or  multi_instance_di‐
              rectories parameters.

              With  all  Postfix versions, you can specify a directory pathname with the MAIL_CONFIG
              environment variable to override the location of configuration files.

### -F _
              Set the sender full name. This overrides the NAME environment variable,  and  is  used
              only with messages that have no **From: **message header.

### -f _
              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  er‐
              ror return address.

### -G     
              rewrite addresses at all, or update incomplete addresses with the  domain  information
              specified with **remote_header_rewrite_domain**.

              This option is ignored before Postfix version 2.3.

### -h _
              Hop count limit. Use the **hopcount_limit **configuration parameter instead.

### -I     

### -i     
              as the end of input.

### -L _
              The logging label. Use the **syslog_name **configuration parameter instead.

### -m (ignored)
              Backwards compatibility.

### -N _
              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 deliv‐
              ered); or specify **never **(don't send any notifications at all).

              This feature is available in Postfix 2.3 and later.

### -n (ignored)
              Backwards compatibility.

### -oA_
              Non-default alias database. Specify _pathname_ or _type_:_pathname_.  See  [**postalias**(1)](https://www.chedong.com/phpMan.php/man/postalias/1/markdown)  for
              details.

### -O _
              Set  the  named _option_ to _value_. Use the equivalent configuration parameter in **main.cf**
              instead.

### -o7 (ignored)

### -o8 (ignored)
              To send 8-bit or binary content, use an appropriate MIME encapsulation and specify the
              appropriate **-B **command-line option.

### -oi    
              as the end of input.

### -om (ignored)
              The sender is never eliminated from alias etc. expansions.

### -o _
              Set option _x_ to _value_. Use the equivalent configuration parameter in **main.cf **instead.

### -r _
              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 er‐
              ror return address.

### -R _
              Delivery status notification control.  Specify "hdrs" to return only the header when a
              message bounces, "full" to return a full copy (the default behavior).

              The **-R **option specifies an upper bound; Postfix will return only the  header,  when  a
              full copy would exceed the bounce_size_limit setting.

              This option is ignored before Postfix version 2.10.

### -q     
              command.

              Warning: flushing undeliverable mail frequently will result in poor  delivery  perfor‐
              mance of all other mail.

### -q_
              The  interval  between queue runs. Use the **queue_run_delay **configuration parameter in‐
              stead.

### -qI_
              Schedule immediate delivery of mail with the specified queue ID.  This option  is  im‐
              plemented by executing the [**postqueue**(1)](https://www.chedong.com/phpMan.php/man/postqueue/1/markdown) command, and is available with Postfix version
              2.4 and later.

### -qR_
              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 imple‐
              mented by executing the [**postqueue**(1)](https://www.chedong.com/phpMan.php/man/postqueue/1/markdown) command.  See [**flush**(8)](https://www.chedong.com/phpMan.php/man/flush/8/markdown) for more information about
              the "fast flush" service.

### -qS_
              This command is not implemented. Use the slower "**sendmail -q**" command instead.

### -t     
              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 _
              Specify the envelope ID for notification by servers that support DSN.

              This feature is available in Postfix 2.3 and later.

### -XV  -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_**=_**do‐_
              _main_@_origin_. The default **+ **and **= **characters are configurable with the **default_verp_de‐**
              **limiters **configuration parameter.

### -XV_ -V_
              As  **-XV**,  but uses _x_ and _y_ as the VERP delimiter characters, instead of the characters
              specified with the **default_verp_delimiters **configuration parameter.

### -v     
              Mail  delivery  always  happens in the background. When multiple **-v **options are given,
              enable verbose logging for debugging purposes.

### -X _
              Log mailer traffic. Use the **debug_peer_list **and **debug_peer_level **configuration parame‐
              ters instead.

## SECURITY
       By design, this program is not set-user (or group) id.  It is prepared to handle message con‐
       tent from untrusted, possibly remote, users.

       However, like most Postfix programs, this program does not enforce a security policy  on  its
       command-line  arguments.   Instead,  it  relies on the UNIX system to enforce access policies
       based on the effective user and group IDs of the process. Concretely, this means that running
       Postfix commands as root (from sudo or equivalent) on behalf of a non-root user is likely  to
       create privilege escalation opportunities.

       If  an application runs any Postfix programs on behalf of users that do not have normal shell
       access to Postfix commands, then that application MUST restrict  user-specified  command-line
       arguments to avoid privilege escalation.

       •      Filter  all  command-line  arguments, for example arguments that contain a pathname or
              that specify a database access method. These pathname  checks  must  reject  user-con‐
              trolled symlinks or hardlinks to sensitive files, and must not be vulnerable to TOCTOU
              race attacks.

       •      Disable  command options processing for all command arguments that contain user-speci‐
              fied data. For example, the Postfix [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown) command line  MUST  be  structured  as
              follows:

                  **/path/to/sendmail _**system-arguments_ **-- _**user-arguments_

              Here, the "**--**" disables command option processing for all _user-arguments_ that follow.

              Without  the  "**--**", a malicious user could enable Postfix [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown) command options,
              by specifying an email address that starts with "**-**".

## DIAGNOSTICS
       Problems are logged to [**syslogd**(8)](https://www.chedong.com/phpMan.php/man/syslogd/8/markdown) or [**postlogd**(8)](https://www.chedong.com/phpMan.php/man/postlogd/8/markdown), 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 **con‐
              figuration 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 program.  The text below
       provides only a parameter summary. See [**postconf**(5)](https://www.chedong.com/phpMan.php/man/postconf/5/markdown) for more details including examples.

## COMPATIBILITY CONTROLS
       Available with Postfix 2.9 and later:

### sendmail_fix_line_endings (always)
              Controls how the Postfix sendmail command converts email  message  line  endings  from
              <CR><LF> into UNIX format (<LF>).

## TROUBLE SHOOTING CONTROLS
       The DEBUG_README file gives examples of how to troubleshoot 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 nexthop destination,  remote  client  or
              server  name or network address matches a pattern given with the debug_peer_list para‐
              meter.

### debug_peer_list (empty)
              Optional list of nexthop destination, remote client or server name or network  address
              patterns  that,  if matched, 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 [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown) command (and with
              the privileged [**postdrop**(1)](https://www.chedong.com/phpMan.php/man/postdrop/1/markdown) helper command).

## RESOURCE AND RATE CONTROLS
### bounce_size_limit (50000)
              The maximal amount of original message text that is sent in a  non-delivery  notifica‐
              tion.

### 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 mes‐
              sage headers.

### queue_run_delay (300s)
              The time between deferred queue scans by the queue manager; prior to Postfix  2.4  the
              default value was 1000s.

## 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-destination 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)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown)
              command line and in SMTP commands.

## MISCELLANEOUS CONTROLS
### alias_database (see 'postconf -d' output)
              The  alias  databases for [**local**(8)](https://www.chedong.com/phpMan.php/man/local/8/markdown) 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 configuration 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)](https://www.chedong.com/phpMan.php/man/newaliases/1/markdown), [**postalias**(1)](https://www.chedong.com/phpMan.php/man/postalias/1/markdown) and  [**postmap**(1)](https://www.chedong.com/phpMan.php/man/postmap/1/markdown)  com‐
              mands.

### delay_warning_time (0h)
              The time after which the sender receives a copy of the message headers of mail that is
              still queued.

### import_environment (see 'postconf -d' output)
              The list of environment variables that a privileged Postfix process will import from a
              non-Postfix parent process, or name=value environment overrides.

### 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)
              Don't 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 (see 'postconf -d' output)
              A prefix that is prepended to the process name in syslog records, so that,  for  exam‐
              ple, "smtpd" becomes "prefix/smtpd".

       Postfix 3.2 and later:

### alternate_config_directories (empty)
              A list of non-default Postfix configuration directories that may be specified with "-c
              config_directory"  on  the command line (in the case of [**sendmail**(1)](https://www.chedong.com/phpMan.php/man/sendmail/1/markdown), with the "-C" op‐
              tion), or via the MAIL_CONFIG environment parameter.

### multi_instance_directories (empty)
              An optional list of non-default Postfix configuration directories;  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.

## FILES
       /var/spool/postfix, mail queue
       /etc/postfix, configuration files

## SEE ALSO
       [pickup(8)](https://www.chedong.com/phpMan.php/man/pickup/8/markdown), mail pickup daemon
       [qmgr(8)](https://www.chedong.com/phpMan.php/man/qmgr/8/markdown), queue manager
       [smtpd(8)](https://www.chedong.com/phpMan.php/man/smtpd/8/markdown), SMTP server
       [flush(8)](https://www.chedong.com/phpMan.php/man/flush/8/markdown), fast flush service
       [postsuper(1)](https://www.chedong.com/phpMan.php/man/postsuper/1/markdown), queue maintenance
       [postalias(1)](https://www.chedong.com/phpMan.php/man/postalias/1/markdown), create/update/query alias database
       [postdrop(1)](https://www.chedong.com/phpMan.php/man/postdrop/1/markdown), mail posting utility
       [postfix(1)](https://www.chedong.com/phpMan.php/man/postfix/1/markdown), mail system control
       [postqueue(1)](https://www.chedong.com/phpMan.php/man/postqueue/1/markdown), mail queue control
       [postlogd(8)](https://www.chedong.com/phpMan.php/man/postlogd/8/markdown), Postfix logging
       [syslogd(8)](https://www.chedong.com/phpMan.php/man/syslogd/8/markdown), system logging

## READMEFILES
       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

       Wietse Venema
       Google, Inc.
       111 8th Avenue
       New York, NY 10011, USA

                                                                                         [_SENDMAIL_(1)](https://www.chedong.com/phpMan.php/man/SENDMAIL/1/markdown)
