7.3. 配置文件
上一页 | 第 7 章 高级 `pkg-plist` 用法 | 下一页

## 7.3. 配置文件

如果 port 需要把一些文件放到 ``PREFIX`/etc`， 不要 简单地安装它们， 并将其列入 `pkg-plist`， 因为这样会导致 pkg_delete(1) 删除用户精心编辑的文件， 而新安装时则又会把这些文件覆盖。

因此， 您应把配置文件的例子按其它的后缀来安装 (例如 ``filename`.sample` 就是一个不错的选择) 并显示一条 消息 告诉用户如何复制并编辑这个配置文件， 以便让软件能够正确工作。

因此， 应按其它的后缀来安装配置文件的例子 (``filename`.sample` 就是一个不错的选择)。 如果实际的配置文件不存在， 则将其复制为实际文件的名字。 卸载时， 如果发现用户没有修改配置文件， 则将其删除。 您需要在 port 的 `Makefile`， 以及 `pkg-plist` (对于从 package 安装的情形) 进行处理。

示例的 `Makefile` 部分：

post-install: @if [ ! -f ${PREFIX}/etc/orbit.conf ]; then \ ${CP} -p ${PREFIX}/etc/orbit.conf.sample ${PREFIX}/etc/orbit.conf ; \ fi

示例的 `pkg-plist` 部分：

@unexec if cmp -s %D/etc/orbit.conf.sample %D/etc/orbit.conf; then rm -f %D/etc/orbit.conf; fi etc/orbit.conf.sample @exec if [ ! -f %D/etc/orbit.conf ] ; then cp -p %D/%F %B/orbit.conf; fi

另外， 还应显示一条 消息 指出用户应在何处复制并编辑这个文件， 以便让软件能开始正常工作。

上一页 | 上一级 | 下一页
7.2. 空目录 | 起始页 | 7.4. 动态装箱单与静态装箱单的对比

本文档和其它文档可从这里下载： ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题，请先阅读 文档，如不能解决再联系 <questions@FreeBSD.org>.
关于本文档的问题请发信联系 <doc@FreeBSD.org>.