    POSTALIAS(1)                                                      POSTALIAS(1)

    NAME
           postalias - Postfix alias database maintenance

    SYNOPSIS
           postalias [-Nfinoprsvw] [-c config_dir] [-d key] [-q key]
                   [file_type:]file_name ...

    DESCRIPTION
           The  postalias(1)  command  creates or queries one or more
           Postfix alias databases, or updates an existing  one.  The
           input  and output file formats are expected to be compati-
           ble with Sendmail version 8, and are expected to be  suit-
           able for the use as NIS alias maps.

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

           While a database update is in progress, signal delivery is
           postponed, and an exclusive, advisory, lock is  placed  on
           the  entire database, in order to avoid surprises in spec-
           tator programs.

           The format of Postfix alias input files  is  described  in
           aliases(5).

           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  regexp: and pcre:. This resulted in
           loss of information with $number substitutions.

           Options:

           -c config_dir
                  Read the main.cf configuration file  in  the  named
                  directory  instead  of  the  default  configuration
                  directory.

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

                  If a key value of - 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.

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

           -i     Incremental mode. Read entries from standard  input
                  and  do  not  truncate  an  existing  database.  By
                  default, postalias(1) creates a new  database  from
                  the entries in file_name.

           -N     Include  the terminating null character that termi-
                  nates lookup keys and values. By  default,  postal-
                  ias(1)  does  whatever  is the default for the host
                  operating system.

           -n     Don't include the terminating null  character  that
                  terminates  lookup  keys  and  values.  By default,
                  postalias(1) does whatever is the default  for  the
                  host operating system.

           -o     Do  not  release  root privileges when processing a
                  non-root input file. By default, postalias(1) drops
                  root  privileges  and runs as the source file owner
                  instead.

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

           -q key Search  the  specified  maps  for key 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 - is specified, the program reads
                  key  values  from  the  standard  input  stream and
                  writes one line of key: value output for  each  key
                  that  was  found.  The  exit status is zero when at
                  least one of the requested keys was found.

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

           -s     Retrieve all database elements, and write one  line
                  of key: value 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.

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

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

           Arguments:

           file_type
                  The database type. To find out what types are  sup-
                  ported, use the "postconf -m" command.

                  The  postalias(1)  command  can query any supported
                  file type, but it can  create  only  the  following
                  file types:

                  btree  The   output   is   a   btree   file,  named
                         file_name.db.  This is available on  systems
                         with support for db databases.

                  cdb    The  output is one file named file_name.cdb.
                         This is available on  systems  with  support
                         for cdb databases.

                  dbm    The  output  consists  of  two  files, named
                         file_name.pag and  file_name.dir.   This  is
                         available  on  systems  with support for dbm
                         databases.

                  hash   The  output  is   a   hashed   file,   named
                         file_name.db.   This is available on systems
                         with support for db databases.

                  sdbm   The output  consists  of  two  files,  named
                         file_name.pag  and  file_name.dir.   This is
                         available on systems with support  for  sdbm
                         databases.

                  When  no  file_type is specified, the software uses
                  the database type specified via  the  default_data-
                  base_type  configuration  parameter.   The  default
                  value for this parameter depends on the host  envi-
                  ronment.

           file_name
                  The  name  of  the  alias database source file when
                  creating a database.

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

           postalias(1)  terminates  with zero exit status in case of
           success (including successful "postalias -q"  lookup)  and
           terminates with non-zero exit status in case of failure.

    ENVIRONMENT
           MAIL_CONFIG
                  Directory with Postfix configuration files.

           MAIL_VERBOSE
                  Enable verbose logging for debugging purposes.

    CONFIGURATION PARAMETERS
           The  following  main.cf parameters are especially relevant
           to this program.

           The text below provides  only  a  parameter  summary.  See
           postconf(5) for more details including examples.

           alias_database (see 'postconf -d' output)
                  The  alias databases for local(8) delivery that are
                  updated with "newaliases" or with "sendmail -bi".

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

           berkeley_db_create_buffer_size (16777216)
                  The  per-table  I/O  buffer  size for programs that
                  create Berkeley DB hash or btree tables.

           berkeley_db_read_buffer_size (131072)
                  The per-table I/O buffer  size  for  programs  that
                  read Berkeley DB hash or btree tables.

           default_database_type (see 'postconf -d' output)
                  The default database type for use in newaliases(1),
                  postalias(1) and postmap(1) commands.

           syslog_facility (mail)
                  The syslog facility of Postfix logging.

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

    STANDARDS
           RFC 822 (ARPA Internet Text Messages)

    SEE ALSO
           aliases(5), format of alias database input file.
           local(8), Postfix local delivery agent.
           postconf(1), supported database types
           postconf(5), configuration parameters
           postmap(1), create/update/query lookup tables
           newaliases(1), Sendmail compatibility interface.
           syslogd(8), system logging

    README FILES
           DATABASE_README, Postfix lookup table overview

    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

                                                                      POSTALIAS(1)