STANNIX Community


Manual: mandb

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.  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 en‐
       hance 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	     Async   Filename
       ──────────────────────────────────────
       Berkeley db   Yes     index.bt
       GNU gdbm	     Yes     index.db
       UNIX ndbm     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 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 database storage scheme is intro‐
	      duced in the future.

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

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

       -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 ~/.manpath.

       -?, --help
	      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.

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

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

       : bad symlink or ROFF `.so' request
	       is either a symbolic link to, or contains a ROFF include request to, a non existent file.

       : ignoring bogus filename
	      The  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  being put in manual page section .

       : competing extensions
	      The wildcard  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 ignored.

FILES
       /etc/manpath.config
	      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)
	      An alternate or FSSTND compliant global index database cache.

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

       The WHATIS PARSING section formerly in this manual page is now part of lexgrog(1).

AUTHOR
       Wilf. (G.Wilford@ee.surrey.ac.uk).
       Fabrizio Polacco (fpolacco@debian.org).
       Colin Watson (cjwatson@debian.org).

BUGS
       https://gitlab.com/man-db/man-db/-/issues
       https://savannah.nongnu.org/bugs/?group=man-db

2.13.1							 2025-05-02						    MANDB(8)