Provided by: man-db_2.10.2-1_amd64 bug

名称

       mandb - 创建或更新手册页索引缓存

概述

       mandb [-dqsucpt?V|-h|-V] [-C 文件] [manpath]
       mandb [-dqsut] [-C 文件] -f 文件名 ...

描述

       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.

       当创建或更新  索引时,mandb  会警告错误的  ROFF  .so  请求,无效的手册页名称和手册页,因为
       whatis 无法解析它们。

       给  mandb 提供可选的,以冒号分隔的路径会覆盖内部的系统手册页层次结构搜索路径,这些路径是从
       man-db 配置文件中的信息确定的。

数据库缓存

       mandb 可以编译支持以下任何一种数据库类型。

       名称          异步   文件名
       ─────────────────────────────────────
       Berkeley db   是     index.bt
       GNU gdbm      是     index.db
       UNIX ndbm     否     index.(dir|pag)

       那些提供异步更新的数据库速度更快,但代价是可能在异常中止时损坏数据。万一这种事情发生,可能
       要重新以 -c 选项运行 mandb 来重建数据库。

选项

       -d, --debug
              打印调试信息。

       -q, --quiet
              不显示警告。

       -s, --no-straycats
              不花时间查找或向数据库添加有关孤立 cat 页面的信息。

       -p, --no-purge
              不花时间检查删除的手册页并从数据库中清理它们。

       -c, --create
              默认情况下,mandb  会尝试更新任何以前创建的数据库。如果某个数据库不存在,程序会创建
              它。此选项强制 mandb 删除以前的数据库并重新生成数据库,并隐含了  --no-purge。在数据
              库损坏或将来引入新数据库存储方案时,这一选项可能用到。

       -u, --user-db
              只创建用户数据库,即使有创建系统数据库所需的写权限。

       -t, --test
              对层次结构搜索路径中的手册页执行正确性检查。使用此选项时,mandb  不会更改现有的数据
              库。

       -f, --filename
              只更新指定文件名对应的记录。此选项不作常规使用;它由 man 内部使用(以 MAN_DB_UPDATES
              选项编译时),以便查找页面是否过期。它隐含了 -p,关闭了 -c-s-C 文件, --config-file=文件
              使用此用户配置文件代替默认的 ~/.manpath-?, --help
              显示用法消息,然后退出。

       --usage
              打印简短的帮助消息并退出。

       -V, --version
              显示版本号,然后退出。

退出状态

       0      程序成功执行。

       1      用法、语法或配置文件错误。

       2      操作出错。

       3      子进程失败。

诊断

       在构建数据库时可能会显示以下警告消息。

       <文件名>: 页面(章节)  whatis 解析失败
              从给定  <文件名> 提取 whatis 行失败。这通常是由于手册编写不当导致的。但如果出现了大
              量这种消息,则可能是系统包含非标准的,和 man-db whatis 解析器不兼容的手册页。请参阅
              lexgrog(1) 中的 WHATIS PARSING 一节了解更多信息。

       <文件名>: 是一个的无效的符号链接
              <文件名>不存在,但被一个符号链接引用。通常会给出进一步的诊断信息,识别出非法链接的
              <文件名>。

       <文件名>: 错误的符号链接或 ROFF `.so' 请求
              <文件名> 是指向不存在的文件的符号链接,或包含带有请求不存在文件的 ROFF。

       <文件名>: 将忽略假的文件名
              <文件名> 可能是或不是有效的手册页,但它的名称是无效的。这通常是由于手册页包含章节扩
              展 <x> 却被放在了手册页章节 <y>。

       <文件名掩码>: 扩展冲突
              通配符 <文件名掩码> 不唯一。这通常是同时存在同一手册页的压缩和非压缩版本导致的。

文件

       /etc/manpath.config
              man-db 配置文件。

       /var/cache/man/index.(bt|db|dir|pag)
              与 FHS 兼容的全局 索引 数据库缓存。

       包含的数据库缓存的较早位置:

       /usr/man/index.(bt|db|dir|pag)
              传统的全局 索引 数据库缓存。

       /var/catman/index.(bt|db|dir|pag)
              替代的或 FSSTND 兼容的全局 索引 数据库缓存。

亦见

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

       此手册页中的 WHATIS PARSING 小节现在是 lexgrog(1) 的一部分。

作者

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

BUGS

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