Back to main site | Back to man page index

MANDB(8)                                          Manual pager utils                                         MANDB(8)



NAME
       mandb - create or update the manual page index caches

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

DESCRIPTION
       mandb  is used to initialise or manually update index database caches that are usually maintained by man.  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 requests, 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 information found within the man-db configuration file.

DATABASE CACHES
       mandb can be compiled with support for any one of the following database types.


       Name                Type          Async   Filename
       ──────────────────────────────────────────────────────────
       Berkeley db         Binary tree   Yes     index.bt
       GNU gdbm v >= 1.6   Hashed        Yes     index.db
       GNU gdbm v <  1.6   Hashed        No      index.db
       UNIX ndbm           Hashed        No      index.(dir|pag)

       Those  database types that support asynchronous updates provide enhanced speed at the cost of possible corrup‐
       tion in the event of unusual termination.  In an unusual case where this has occurred, it may be necessary  to
       rerun mandb with the -c option to re-create the databases from scratch.

OPTIONS
       -d, --debug
              Print debugging information.

       -q, --quiet
              Produce no warnings.

       -s, --no-straycats
              Do not spend time looking for or adding information to the databases 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 data‐
              base storage scheme is introduced in the future.

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

       -t, --test

              Show the usage message, then exit.

       --usage
              Print a short usage message and exit.

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

EXIT STATUS
       0      Successful program execution.

       1      Usage, syntax, or configuration file error.

       2      Operational error.

       3      A child process failed.

DIAGNOSTICS
       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 system  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  emit‐
              ted to identify the <filename> of the offending link.

       <filename>: bad symlink or ROFF `.so' request
              <filename> is either a symbolic link to, or contains a ROFF include 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 sectional 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  com‐
              pressed and uncompressed version of the same manual page.  All but the most recent are ignored.

FILES
       /etc/man_db.conf
              man-db configuration file.

       /var/cache/man/index.(bt|db|dir|pag)
              An FHS compliant global index database cache.

       Older locations for the database cache included:

       /usr/man/index.(bt|db|dir|pag)
              A traditional global index database cache.

       /var/catman/index.(bt|db|dir|pag)


2.6.3                                                 2012-09-17                                             MANDB(8)