MANDB(8)                      Manual pager utils                      MANDB(8)

       mandb - create or update the manual page index caches

       mandb [-dqsucpt?V] [-C file] [manpath]
       mandb [-dqsut] [-C file] -f filename ...

       mandb  is  used to initialise or manually update index database caches.
       The caches contain information relevant to the  current  state  of  the
       manual  page  system  and the information stored within them is used by
       the man-db utilities to enhance their speed and functionality.

       When creating or updating an index, mandb will warn of bad ROFF .so re-
       quests,  bogus  manual  page  filenames and manual pages from which the
       whatis cannot be parsed.

       Supplying mandb with an optional colon-delimited path will override the
       internal  system manual page hierarchy search path, determined from in-
       formation found within the man-db configuration file.

       mandb can be compiled with support for any one of the  following  data-
       base types.

       Name          Type                   Async   Filename
       Berkeley db   Binary tree            Yes
       GNU gdbm      Hashed                 Yes     index.db
       UNIX ndbm     Hashed                 No      index.(dir|pag)

       Those database types that support asynchronous updates provide enhanced
       speed at the cost of possible corruption in the event of unusual termi-
       nation.   In  an unusual case where this has occurred, it may be neces-
       sary to rerun mandb with the -c option to re-create the databases  from

       -d, --debug
              Print debugging information.

       -q, --quiet
              Produce no warnings.

       -s, --no-straycats
              Do not spend time looking for or adding information to the data-
              bases regarding stray cats.

       -p, --no-purge
              Do not spend time checking for deleted manual pages and  purging
              them from the databases.

       -c, --create
              By  default,  mandb  will  try  to update any previously created
              databases.  If a database does not exist,  it  will  create  it.
              This  option  forces  mandb to delete previous databases and re-
              create them from scratch, and implies --no-purge.  This  may  be
              necessary  if  a  database  becomes corrupt or if a new database
              storage scheme is introduced in the future.

       -u, --user-db
              Create user databases only, even with write  permissions  neces-
              sary to create system databases.

       -t, --test
              Perform  correctness  checks  on  manual  pages in the hierarchy
              search path.  With this option, mandb will  not  alter  existing

       -f, --filename
              Update  only the entries for the given filename.  This option is
              not for general use; it is used internally by man  when  it  has
              been  compiled  with  the MAN_DB_UPDATES option and finds that a
              page is out of date.  It implies -p and disables -c and -s.

       -C file, --config-file=file
              Use this user configuration file  rather  than  the  default  of

       -?, --help
              Show the usage message, then exit.

              Print a short usage message and exit.

       -V, --version
              Show the version, then exit.

       0      Successful program execution.

       1      Usage, syntax, or configuration file error.

       2      Operational error.

       3      A child process failed.

       The following warning messages can be emitted during database building.

       <filename>: whatis parse for page(sec) failed
              An  attempt  to extract whatis line(s) from the given <filename>
              failed.  This is usually due to a poorly  written  manual  page,
              but if many such messages are emitted it is likely that the sys-
              tem contains non-standard manual pages  which  are  incompatible
              with  the  man-db whatis parser.  See the WHATIS PARSING section
              in lexgrog(1) for more information.

       <filename>: is a dangling symlink
              <filename> does not exist but is referenced by a symbolic  link.
              Further  diagnostics  are usually emitted to identify the <file-
              name> of the offending link.

       <filename>: bad symlink or ROFF `.so' request
              <filename> is either a symbolic link to, or contains a ROFF  in-
              clude request to, a non existent file.

       <filename>: ignoring bogus filename
              The  <filename>  may  or  may not be a valid manual page but its
              name is invalid.  This is usually due to a manual page with sec-
              tional extension <x> being put in manual page section <y>.

       <filename_mask>: competing extensions
              The  wildcard  <filename_mask>  is  not unique.  This is usually
              caused by the existence of both a  compressed  and  uncompressed
              version  of  the  same manual page.  All but the most recent are

              man-db configuration file.

              An FHS compliant global index database cache.

       Older locations for the database cache included:

              A traditional global index database cache.

              An alternate or FSSTND compliant global index database cache.

       lexgrog(1), man(1), manpath(5), catman(8)

       The WHATIS PARSING section formerly in this manual page is now part  of

       Wilf. (
       Fabrizio Polacco (
       Colin Watson (

2.9.1                             2020-02-25                          MANDB(8)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.