Provided by: man-db_2.8.7-3_amd64 bug

名称

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

概述

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

描述

       mandb           用于初始化或手动更新          索引          数据库缓存(通常由          man
       维护)。缓存包含与手册页系统当前状态相关的信息;保存在缓存中的这些信息被             man-db
       工具用来提高速度和增强功能。

       当创建或更新  索引时,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).