postmap.1.html   [plain text]


<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<title> Postfix manual - postmap(1) </title>
</head> <body> <pre>
POSTMAP(1)                                                          POSTMAP(1)

<b>NAME</b>
       postmap - Postfix lookup table management

<b>SYNOPSIS</b>
       <b>postmap</b> [<b>-Nbfhimnoprsvw</b>] [<b>-c</b> <i>config</i><b>_</b><i>dir</i>] [<b>-d</b> <i>key</i>] [<b>-q</b> <i>key</i>]
               [<i>file</i><b>_</b><i>type</i>:]<i>file</i><b>_</b><i>name</i> ...

<b>DESCRIPTION</b>
       The <a href="postmap.1.html"><b>postmap</b>(1)</a> command creates  or  queries  one  or  more
       Postfix  lookup  tables,  or  updates an existing one. The
       input and output file formats are expected to be  compati-
       ble with:

           <b>makemap</b> <i>file</i><b>_</b><i>type file</i><b>_</b><i>name</i> &lt; <i>file</i><b>_</b><i>name</i>

       If the result files do not exist they will be created with
       the same group and other read permissions as their  source
       file.

       While  the table update is in progress, signal delivery is
       postponed, and an exclusive, advisory, lock is  placed  on
       the entire table, in order to avoid surprises in spectator
       processes.

<b>INPUT FILE FORMAT</b>
       The format of a lookup table input file is as follows:

       <b>o</b>      A table entry has the form

                   <i>key</i> whitespace <i>value</i>

       <b>o</b>      Empty lines and whitespace-only lines are  ignored,
              as  are  lines whose first non-whitespace character
              is a `#'.

       <b>o</b>      A logical line starts with non-whitespace  text.  A
              line  that starts with whitespace continues a logi-
              cal line.

       The <i>key</i> and <i>value</i> are processed as is,  except  that  sur-
       rounding  white space is stripped off. Unlike with Postfix
       alias databases, quotes cannot be used to  protect  lookup
       keys that contain special characters such as `#' or white-
       space.

       By default the lookup key is mapped to lowercase  to  make
       the  lookups case insensitive; as of Postfix 2.3 this case
       folding happens only with tables  whose  lookup  keys  are
       fixed-case  strings  such  as  btree:, dbm: or hash:. With
       earlier versions, the  lookup  key  is  folded  even  with
       tables where a lookup field can match both upper and lower
       case text, such as <a href="regexp_table.5.html">regexp</a>: and  <a href="pcre_table.5.html">pcre</a>:.  This  resulted  in
       loss of information with $<i>number</i> substitutions.

<b>COMMAND-LINE ARGUMENTS</b>
       <b>-b</b>     Enable message body query mode. When reading lookup
              keys from standard input with "<b>-q -</b>",  process  the
              input as if it is an email message in <a href="http://tools.ietf.org/html/rfc2822">RFC 2822</a> for-
              mat.  Each line of body content becomes one  lookup
              key.

              By  default, the <b>-b</b> option starts generating lookup
              keys at the first non-header line, and  stops  when
              the  end  of  the  message is reached.  To simulate
              <a href="header_checks.5.html"><b>body_checks</b>(5)</a> processing, enable MIME parsing with
              <b>-m</b>.  With  this,  the  <b>-b</b> option generates no body-
              style lookup keys for attachment MIME  headers  and
              for attached message/* headers.

              This  feature  is  available in Postfix version 2.6
              and later.

       <b>-c</b> <i>config</i><b>_</b><i>dir</i>
              Read the <a href="postconf.5.html"><b>main.cf</b></a> configuration file  in  the  named
              directory  instead  of  the  default  configuration
              directory.

       <b>-d</b> <i>key</i> Search the specified maps for <i>key</i>  and  remove  one
              entry  per  map.   The exit status is zero when the
              requested information was found.

              If a key value of <b>-</b> is specified, the program reads
              key values from the standard input stream. The exit
              status is zero when at least one of  the  requested
              keys was found.

       <b>-f</b>     Do not fold the lookup key to lower case while cre-
              ating or querying a table.

              With Postfix version 2.3 and later, this option has
              no  effect  for  regular  expression tables. There,
              case folding is controlled by appending a flag to a
              pattern.

       <b>-h</b>     Enable  message  header  query  mode.  When reading
              lookup  keys  from  standard  input  with  "<b>-q  -</b>",
              process  the  input as if it is an email message in
              <a href="http://tools.ietf.org/html/rfc2822">RFC 2822</a> format.  Each logical header line  becomes
              one  lookup  key.  A  multi-line header becomes one
              lookup key with one or more embedded newline  char-
              acters.

              By  default,  the  <b>-h</b>  option generates lookup keys
              until the first non-header  line  is  reached.   To
              simulate  <a href="header_checks.5.html"><b>header_checks</b>(5)</a>  processing, enable MIME
              parsing with <b>-m</b>. With this, the <b>-h</b> option also gen-
              erates header-style lookup keys for attachment MIME
              headers and for attached message/* headers.

              This feature is available in  Postfix  version  2.6
              and later.

       <b>-i</b>     Incremental  mode. Read entries from standard input
              and  do  not  truncate  an  existing  database.  By
              default, <a href="postmap.1.html"><b>postmap</b>(1)</a> creates a new database from the
              entries in <b>file_name</b>.

       <b>-m</b>     Enable MIME parsing with "<b>-b</b>" and "<b>-h</b>".

              This feature is available in  Postfix  version  2.6
              and later.

       <b>-N</b>     Include  the terminating null character that termi-
              nates  lookup  keys   and   values.   By   default,
              <a href="postmap.1.html"><b>postmap</b>(1)</a>  does  whatever  is  the default for the
              host operating system.

       <b>-n</b>     Don't include the terminating null  character  that
              terminates  lookup  keys  and  values.  By default,
              <a href="postmap.1.html"><b>postmap</b>(1)</a> does whatever is  the  default  for  the
              host operating system.

       <b>-o</b>     Do  not  release  root privileges when processing a
              non-root input file. By default,  <a href="postmap.1.html"><b>postmap</b>(1)</a>  drops
              root  privileges  and runs as the source file owner
              instead.

       <b>-p</b>     Do not inherit the file access permissions from the
              input file when creating a new file.  Instead, cre-
              ate a new  file  with  default  access  permissions
              (mode 0644).

       <b>-q</b> <i>key</i> Search  the  specified  maps  for <i>key</i> and write the
              first value found to the  standard  output  stream.
              The exit status is zero when the requested informa-
              tion was found.

              If a key value of <b>-</b> is specified, the program reads
              key  values  from  the  standard  input  stream and
              writes one line of <i>key value</i> output  for  each  key
              that  was  found.  The  exit status is zero when at
              least one of the requested keys was found.

       <b>-r</b>     When  updating  a  table,  do  not  complain  about
              attempts to update existing entries, and make those
              updates anyway.

       <b>-s</b>     Retrieve all database elements, and write one  line
              of  <i>key value</i> output for each element. The elements
              are printed in database order, which is not  neces-
              sarily the same as the original input order.

              This  feature  is  available in Postfix version 2.2
              and later, and is not available  for  all  database
              types.

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

       <b>-w</b>     When  updating  a  table,  do  not  complain  about
              attempts to update  existing  entries,  and  ignore
              those attempts.

       Arguments:

       <i>file</i><b>_</b><i>type</i>
              The  database type. To find out what types are sup-
              ported, use the "<b>postconf -m</b>" command.

              The <a href="postmap.1.html"><b>postmap</b>(1)</a> command can query any supported file
              type,  but  it  can  create only the following file
              types:

              <b>btree</b>  The output  file  is  a  btree  file,  named
                     <i>file</i><b>_</b><i>name</i><b>.db</b>.   This is available on systems
                     with support for <b>db</b> databases.

              <b>cdb</b>    The  output  consists  of  one  file,  named
                     <i>file</i><b>_</b><i>name</i><b>.cdb</b>.  This is available on systems
                     with support for <b>cdb</b> databases.

              <b>dbm</b>    The output  consists  of  two  files,  named
                     <i>file</i><b>_</b><i>name</i><b>.pag</b>  and  <i>file</i><b>_</b><i>name</i><b>.dir</b>.   This is
                     available on systems with  support  for  <b>dbm</b>
                     databases.

              <b>hash</b>   The  output  file  is  a  hashed file, named
                     <i>file</i><b>_</b><i>name</i><b>.db</b>.  This is available on  systems
                     with support for <b>db</b> databases.

              <b>sdbm</b>   The  output  consists  of  two  files, named
                     <i>file</i><b>_</b><i>name</i><b>.pag</b> and  <i>file</i><b>_</b><i>name</i><b>.dir</b>.   This  is
                     available  on  systems with support for <b>sdbm</b>
                     databases.

              When no <i>file</i><b>_</b><i>type</i> is specified, the  software  uses
              the  database  type specified via the <b><a href="postconf.5.html#default_database_type">default_data</a>-</b>
              <b><a href="postconf.5.html#default_database_type">base_type</a></b> configuration parameter.

       <i>file</i><b>_</b><i>name</i>
              The name of  the  lookup  table  source  file  when
              rebuilding a database.

<b>DIAGNOSTICS</b>
       Problems  are  logged  to the standard error stream and to
       <b>syslogd</b>(8).   No  output  means  that  no  problems   were
       detected.  Duplicate  entries  are skipped and are flagged
       with a warning.

       <a href="postmap.1.html"><b>postmap</b>(1)</a> terminates with zero exit  status  in  case  of
       success  (including  successful  "<b>postmap  -q</b>" lookup) and
       terminates with non-zero exit status in case of failure.

<b>ENVIRONMENT</b>
       <b>MAIL_CONFIG</b>
              Directory with Postfix configuration files.

       <b>MAIL_VERBOSE</b>
              Enable verbose logging for debugging purposes.

<b>CONFIGURATION PARAMETERS</b>
       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are  especially  relevant
       to this program.  The text below provides only a parameter
       summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including  exam-
       ples.

       <b><a href="postconf.5.html#berkeley_db_create_buffer_size">berkeley_db_create_buffer_size</a> (16777216)</b>
              The  per-table  I/O  buffer  size for programs that
              create Berkeley DB hash or btree tables.

       <b><a href="postconf.5.html#berkeley_db_read_buffer_size">berkeley_db_read_buffer_size</a> (131072)</b>
              The per-table I/O buffer  size  for  programs  that
              read Berkeley DB hash or btree tables.

       <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
              The  default  location  of  the Postfix <a href="postconf.5.html">main.cf</a> and
              <a href="master.5.html">master.cf</a> configuration files.

       <b><a href="postconf.5.html#default_database_type">default_database_type</a> (see 'postconf -d' output)</b>
              The default database type for use in <a href="newaliases.1.html"><b>newaliases</b>(1)</a>,
              <a href="postalias.1.html"><b>postalias</b>(1)</a> and <a href="postmap.1.html"><b>postmap</b>(1)</a> commands.

       <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
              The syslog facility of Postfix logging.

       <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
              The  mail  system  name  that  is  prepended to the
              process name in syslog  records,  so  that  "smtpd"
              becomes, for example, "postfix/smtpd".

<b>SEE ALSO</b>
       <a href="postalias.1.html">postalias(1)</a>, create/update/query alias database
       <a href="postconf.1.html">postconf(1)</a>, supported database types
       <a href="postconf.5.html">postconf(5)</a>, configuration parameters
       syslogd(8), system logging

<b>README FILES</b>
       <a href="DATABASE_README.html">DATABASE_README</a>, Postfix lookup table overview

<b>LICENSE</b>
       The Secure Mailer license must be  distributed  with  this
       software.

<b>AUTHOR(S)</b>
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

                                                                    POSTMAP(1)
</pre> </body> </html>