要显示哪个软件包提供了特定的 SMF 服务,请将该服务的名称作为 org.opensolaris.smf.fmri 属性的值进行搜索。
$ pkg search -o pkg.name,search.match 'org.opensolaris.smf.fmri:*network/http*' PKG.NAME SEARCH.MATCH web/java-servlet/tomcat svc:/network/http web/proxy/squid svc:/network/http web/proxy/privoxy svc:/network/http web/server/lighttpd-14 svc:/network/http web/server/apache-22 svc:/network/http web/server/apache-22 svc:/network/http:apache22 web/server/lighttpd-14 svc:/network/http:lighttpd14 web/proxy/privoxy svc:/network/http:privoxy web/proxy/squid svc:/network/http:squid web/java-servlet/tomcat svc:/network/http:tomcat6
在这种情况下,每个属性都具有两个值:具有指定实例名称的服务名称和不具有指定实例名称的服务名称。以下示例说明如何在软件包清单中指定此属性:
set name=org.opensolaris.smf.fmri value=svc:/network/http value=svc:/network/http:apache22
以下示例显示了相同的信息且每个软件包只列出一次。对冒号字符进行了转义,以便它被解释为 token 的一部分,而不是其他搜索查询字段。
$ pkg search -o pkg.name,search.match 'org.opensolaris.smf.fmri:*network/http\:*' PKG.NAME SEARCH.MATCH web/server/apache-22 svc:/network/http:apache22 web/server/lighttpd-14 svc:/network/http:lighttpd14 web/proxy/privoxy svc:/network/http:privoxy web/proxy/squid svc:/network/http:squid web/java-servlet/tomcat svc:/network/http:tomcat6