Oracle® Solaris 11.2 でのシステムサービスの管理

印刷ビューの終了

更新: 2014 年 7 月
 
 

実行制御スクリプトを SMF サービスに変換する方法

この手順では、実行制御スクリプトを SMF で管理できるように、実行制御スクリプトを SMF サービスマニフェストに置き換える方法を示します。実行制御スクリプトを変換するには、rc-script 名を、svcbundle コマンドの -s オプションとともに使用します。詳細は、svcbundle(1M)のマニュアルページを参照するか、svcbundle help rc-script と入力してください。

  1. サービスモデルを判断します。

    デフォルトで、svcbundletransient サービスを作成します。この実行制御スクリプトが、長時間実行するデーモンを起動し、contract サービスであるかどうかを判断します。サービスモデルの詳細は、サービスモデルおよびsvc.startd(1M)のマニュアルページを参照してください。

  2. 初期マニフェストを作成します。

    この例では、サービス名は ex_con であり、レベル 2 で実行する契約サービスです。

    $ svcbundle -o /tmp/ex_con.xml -s service-name=ex_con
          -s rc-script=/etc/init.d/ex_con:2 -s model=contract
  3. マニフェストに対し必要な変更をすべて行います。

    /tmp/ex_con.xml マニフェストの内容が必要としている内容かを検証します。必要に応じてコメントを追加します。

  4. マニフェストを標準ディレクトリにコピーします。
    $ cp /tmp/ex_con.xml /lib/svc/manifest/site/ex_con.xml
  5. 既存のサービスを停止します。
    $ /etc/init.d/ex_con stop
  6. 実行制御スクリプトを無効にします。

    該当する rcn.d ディレクトリから実行制御スクリプトへのリンクを削除します。

  7. マニフェストをインポートし、サービスを起動します。
    $ svcadm restart manifest-import
  8. 新しいサービスを一覧表示します。

    新しいサービスが存在し、予想される状態になっていることを検証します。

    $ svcs ex-con