在 Oracle® Solaris 11.2 中管理系统服务

退出打印视图

更新时间: 2014 年 7 月
 
 

创建 SMF 服务

服务清单包含一组完整的与特定服务相关的属性,包括实例、相关项、服务启动和停止时运行的脚本,以及缺省的应用程序属性值。清单还提供服务说明等模板信息。有关 SMF 清单内容和格式的完整说明,请参见 service_bundle(4) 手册页和 /usr/share/lib/xml/dtd/service_bundle.dtd.1 服务包 DTD。另请参见命名服务、实例、属性组和属性,以了解有关命名规则和分配属性组类型的信息。

使用 svcbundle 服务包生成器工具是创建简单服务或启动更复杂服务的好方法。有关更多信息,请参见 svcbundle(1M) 手册页。您可以使用服务包 DTD 和其他服务清单完成更复杂的服务。

定制清单的标准位置为 /lib/svc/manifest/site。此位置存储的清单在引导期间任何服务启动之前,由 svc:/system/early-manifest-import:default 服务导入服务配置系统信息库。尽早运行导入过程,可以确保系统信息库包含服务启动之前的最新清单信息。此标准位置存储的清单在 svc:/system/manifest-import 服务重新启动时也会导入。

可以使用多个清单描述一个服务。例如,此功能可用于在不修改服务现有清单的情况下,定义该服务的新实例。但是,如果多个清单为同一服务或实例在同一层定义了相同属性,则 SMF 无法确定要使用哪个值。如果检测到这种冲突,该实例将置于维护状态。有关层的更多信息,请参见系统信息库层

将名称和说明元数据添加到您的清单,以便用户可以通过 svcssvccfg describe 命令获得有关此服务的信息。您还可以添加属性值的说明。请参见 DTD 中的 valuevaluestemplate 元素。

使用 svccfg validate 命令验证您的服务清单文件或服务实例 FMRI。使用标准位置中的清单、方法和配置文件,重新启动 manifest-import 服务以安装和配置您的服务实例。使用 svcs 命令查看服务实例的状态。

本节说明如何创建定制 SMF 服务。site 前缀已保留用于特定于站点的定制。名为 svc:/site/service-name 的服务不会与 Oracle Solaris 发行版中提供的服务冲突。