この手順は、起動メソッドとして既存のカスタムスクリプトを使用するサービスを作成します。
デフォルトで、svcbundle は transient サービスを作成します。このサービスの起動メソッドスクリプトが、長時間実行するデーモンを起動し、contract サービスであるかどうかを判断します。サービスモデルの詳細は、サービスモデルおよびsvc.startd(1M)のマニュアルページを参照してください。
この例では、このサービスの起動メソッドスクリプトであるスクリプトに ex_svc の名前が付けられています。このスクリプトを /lib/svc/method/ex_svc にコピーします。
この例では、サービス名は site/ex_svc です。これは、一時サービスであり、停止メソッドを必要としません。
$ svcbundle -o /tmp/ex_svc.xml -s service-name=site/ex_svc \ -s start-method=/lib/svc/method/ex_svc
/tmp/ex_svc.xml マニフェストの内容が必要なものかを検証します。必要に応じてコメントを追加します。
svccfg validate コマンドを使用して、サービスマニフェストが有効であることを確認します。
$ cp /tmp/ex_svc.xml /lib/svc/manifest/site/ex_svc.xml
$ svcadm restart manifest-import
新しいサービスマニフェストに変更を加える必要がない場合、-i オプションを使用して、作成後すぐにプロファイルをインストールできます。svcbundle コマンドは、/lib/svc/manifest/site にマニフェストを書き込み、manifest-import サービスを再起動します。/lib/svc/manifest/site ディレクトリにおける同じ名前の既存のファイルは上書きされます。
# svcbundle -i -s service-name=site/ex_svc \ -s start-method=/lib/svc/method/ex_svc