mandb 在 /var/cache/man 中生成所有可能的语言

mandb 在 /var/cache/man 中生成所有可能的语言

在 Debian 12 中,每周运行以下命令:

start-stop-daemon --start --pidfile /dev/null --startas /usr/bin/mandb --oknodo --chuid man -- --quiet

它生成 man 缓存/var/cache/man

但是查看该目录,我看到正在生成所有可能的语言:

...
./zh_CN
./zh_CN/cat1
./zh_CN/cat5
./zh_CN/cat8
./zh_CN/index.db
./zh_TW
./zh_TW/cat1
./zh_TW/cat5
./zh_TW/cat8
./zh_TW/index.db

我将语言设置为英语,如何防止生成无意义的语言?

答案1

mandb不会生成所有可能的语言,它会为所有已安装的联机帮助页生成数据库缓存。比较/usr/share/man和的内容/var/cache/man:您会发现后者的语言与前者的语言相对应。

如果您不需要某些语言,则可以完全删除相应的联机帮助页。创建配置文件dpkg例如 /etc/dpkg/dpkg.cfg.d/locales,包含

path-exclude=/usr/share/man/*
path-include=/usr/share/man/man[1-9]/*
path-include=/usr/share/man/en*/*

(仅适用于英语;path-include如果您需要其他语言,请添加更多条目)。这将防止dpkg将来安装其他联机帮助页。完成后,删除不需要的现有目录,例如

sudo rm -rf /usr/share/man/zh* /var/cache/man/zh*

相关内容