|新しいページ|検索|ページ一覧|RSS|@ウィキご利用ガイド | 管理者にお問合せ
|ログイン|

Subversionを題材にしたSMF(Service Management Facility)いぢり

    
※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。



Solaris10になって、サービスの管理はSMFで行うようになりました。サービスの管理方法が統一されてとても便利ではあるのですが、いざ自分でサービスを登録しようとすると、XML形式のマニフェストファイルなど、覚えなければいけないことがいろいろと出てきます。ここでは特定のサービスを題材にSMFを勉強していきたいと思います。

Solaris10 SMFによるサービス管理

Solaris10以降、サービスはinetdではなくてSMFで管理されています。とっても便利なので、どんどん使いましょう!

  • inetd経由でSMF管理するための設定ファイル生成(Subversionの場合)
まずは/etc/servicesを書きます。
 (/etc/services)
 svn    3690/tcp           # Subversion server
 svn    3690/udp           # Subversion server
次に、inetd用のconfファイルを書きます。
 (inetd.conf_svn)
 svn stream tcp nowait svn /usr/local/bin/svnserve svnserve -i -r /export/home/cn/REPOSITORIES
上記2ファイルの内容に矛盾がないことを確認したら、SMF用ファイル変換コマンドを実行します。
 # inetconv -i ./inetd.conf_svnserve[Enter]
 svn -> /var/svc/manifest/network/svn-tcp.xml
 Importing svn-tcp.xml ...Done
これで、生成が完了します。

inetadmコマンドで確認しましょう。
 # inetadm | grep svn
 enabled online svc:/network/svn/tcp:default
inetd管理のものはinetadmコマンドで無効にできます。
 # inetadm -d /network/svn/tcp

  • SMFでちゃんと管理(Subversionの場合)
まずはSMFマニフェストをsubversion.xmlという名前で記述し、/var/svc/manifest/networkに置きます。今回の例ではFMRI(SMFサービス名)をsvc:/network/subversionにしています。
さらに、上記ファイルは/lib/svc/methodにおいてあるシェルスクリプトsubversionでサーバを起動・停止することを前提としていますので、subversionを記述して、/lib/svc/methodに置きます。

ファイルが揃ったら、SMFに登録します。
 # svccfg import /var/svc/manifest/network/subversion.xml
 # svcs -a | grep subv    <= 確認
 online 11:36:53 svc:/network/subversion:default
ちなみに、マニフェストの削除は、
 # svccfg delete svc:/network/subversion
サービスの開始、停止は、
 # svcadm enable svc:/network/subversion
 # svcadm disable svc:/network/subversion
になります!

  • その他

★★ クイックメニュー
  • Mortorcycle Life
    • ビーちゃんと一緒!(BMW R1200Rを愉しむ)
    • WR250Rの紹介
    • XT660Zテネレ(単テネ)たんの紹介
    • YZF-R6の紹介
    • バイクインプレ集
    • 現在の私の装備

※クイックメニューは一部のメニューだけを抜粋しています。

取得中です。



管理人へ連絡
名前
メールアドレス
内容