每个脚本应该能够多次执行,因为该脚本针对软件包的每个卷都执行一次。这意味着使用同一输入执行脚本任意次数时,会产生与只执行脚本一次相同的结果。
用于安装不在 pkgmap 文件中的软件包对象的每个过程脚本必须使用 installf 命令通知软件包数据库它正在添加或修改路径名。完成所有添加或修改之后,应带有 -f 选项调用此命令。只有 postinstall 和 postremove 脚本可以按这种方式安装软件包对象。有关更多信息,请参见 installf(1M) 手册页和第 5 章。
在过程脚本执行期间不允许与管理员交互。所有管理员交互仅限于 request 脚本。
用于删除未从 pkgmap 文件安装的文件的每个过程脚本必须使用 removef 命令通知软件包数据库它正在删除路径名。完成删除之后,应带有 -f 选项调用此命令。有关详细信息和示例,请参见 removef(1M) 手册页和第 5 章。
必须使用 installf 和 removef 命令,因为过程脚本不会自动与 pkgmap 文件中列出的任何路径名相关联。