MAKEMANDB(8) BSD System Manager's Manual MAKEMANDB(8)
makemandb -- parse the manual pages and build a search index over them
makemandb [-floQqv] [-C path]
The makemandb utility traverses the directories containing man pages, parses the manual pages with the help of libmandoc and builds an Sqlite
database man.db to support full text searches. It obtains the list of directories to traverse using the -path and -p options of man(1).
It supports the following options:
Use different man(1) configuration file than the default, /etc/man.conf.
-f Force rebuilding the index from scratch, pruning the existing one.
-l Limit the parsing to only the NAME section of the pages. This option can be used to mimic the behavior of the classic apropos(1) and
also to substantially save disk space.
-o Use this option to optimize the index for speed and also to significantly reduce disk space usage. This is a somewhat expensive
-Q Print only fatal error messages (i.e., when the database is left in an inconsistent state and needs manual intervention).
-q Print only warnings and error messages but no status updates.
-v Enable verbose output. This prints the name of every file being parsed and a summary at the end of the index update.
As the database file is stored under /var/db, root privileges are required to run makemandb.
The name of the FTS table is mandb and its schema is as follows:
section The section number of the page
name The name of the page from the NAME section.
name_desc The one line description from the NAME section.
desc The DESCRIPTION section.
lib The LIBRARY section.
return_vals The RETURN VALUES section.
env The ENVIRONMENT section.
files The FILES section.
exit_status The EXIT STATUS section.
diagnostics The DIAGNOSTICS section.
errors The ERRORS section.
md5_hash MD5 checksum of the man page.
machine The machine architecture (if any) for which the man page is relevant.
/var/db/man.db The Sqlite FTS database which contains an index of the manual pages.
apropos(1), man(1), whatis(1), man.conf(5)
August 29, 2012 BSD