HULFTのサービスを起動したい

OrangeLab. 運営チーム
作成日時: - 更新日時:
Avatar

はじめに

こんにちは、メディアフォースの佐渡です。

HULFTを使用するときは、まず前提としてHULFTのサービスを起動しておく必要があります。

しかしただ起動するとはいっても、起動方式を検討しているシステム構築担当者にとっては、そもそもHULFTのサービスは何のプログラムを管理しているの?とか、集配信処理やジョブを実行するユーザの権限をわけたいんだけど、サービスの起動ユーザとの関連性はある?とか、常時起動を担保するためにプロセスを監視設定したい!などといった構築・運用フェーズでは、様々な観点で考慮するポイントがあると思います。

本Tipsでは、Windows版におけるHULFTのサービス起動方法、HULFTサービスの構成の話、構築時のポイントを解説していきます。

HULFTサービスの役割

まずは、サービスの役割について説明します。

HULFTサービスは、HULFTが生成する下記常駐プロセスを管理しています。
常駐プロセスについては本Tipsのテーマとは外れますが、軽くおさらいしておきましょう。



プロセス名 HULFT上の名前 役割概要
hulobs.exe 要求受付プロセス 他サーバからのHULFT制御情報を受け付けるプロセス
hulrcv.exe 集信プロセス ファイルを受信するプロセス
hulsch.exe スケジューラプロセス スケジュールを制御するプロセス
hulsdd.exe 配信プロセス ファイルを送信するプロセス
hulsrvc.exe HULFT サービス 上記常駐プロセスを管理

※ スケジューラプロセスについては、Windows版のみ対象となります。

常駐プロセスについておさらいしたところで、サービスで各プロセスを管理できる設定について説明します。
HULFTでは、サービス起動時に自動起動させるプロセスを選択することができます。

設定方法

システム動作環境設定[プロセス自動起動]の設定にて、サービス起動時にどのプロセスを起動するかを設定できます。
下記図は、サービス起動時に、「配信プロセス」「集信プロセス」を起動する設定になっています。



※なお、HULFTを新規インストールしたときは、すべてのプロセスが自動起動するように設定されています。

HULFTサービスの起動ユーザについて

HULFTサービス起動アカウントは、デフォルト "ローカル システム アカウント"です。
上記以外のアカウントでHULFTサービスを起動するには、下記条件の管理者(以下のローカルセキュリティポリシーの設定)権限が必要で、一般ユーザでのサービスの起動はできません。
  1. ローカルマシンのadministrators グループに所属している
  2. 次に示すユーザ権利を与えられている
  • オペレーティングシステムの一部として機能
  • プロセスのメモリクォータの増加(Windows2000 の場合はクォータの増加)
  • プロセスレベルトークンの置き換え 
  • ファイルとディレクトリの復元 
  • ファイルとディレクトリのバックアップ 
    ※設定を行った後はHULFTサービスの再起動を行ってください。
HULFTのサービスを起動させると、それぞれ常駐プロセスがサービスを起動したユーザで起動されます。
しかし、管理者権限でしか起動できないのは不便なので一般ユーザでも動作させたい!といった意見もあると思います。

その場合は、常駐プロセスの起動ユーザに関しては、[システム動作環境設定]の[アカウント設定]に起動ユーザの情報を設定することでHULFT Ver.8.0.0以降に限り一般ユーザ権限にて常駐プロセスを起動することができます。
Windows版ではサービスと常駐プロセスを分けて考える必要があるのです。詳細は下記になります。

HULFT V7の場合

プロセス名 管理者 一般ユーザ
hulsrvc.exe ×
hulsdd.exe ×
hulrcv.exe ×
hulobs.exe ×
hulsch.exe ×

HULFT V8の場合

プロセス名 管理者 一般ユーザ
hulsrvc.exe ×
hulsdd.exe
hulrcv.exe
hulobs.exe
hulsch.exe

HULFTのどのような処理が、どのプロセスの起動ユーザによって行われるかは、HULFTのアドミニストレーションマニュアルに記載してありますのでそれに合わせて設定を検討ください。

HULFTサービスの起動方法について

サービスの制御方法や、ユーザ権限について理解したところで、サービスの起動方法について説明します。

サービスの起動には下記4種類があります。
  1. HULFTプロセスコントローラから起動
  2. コントロールパネルのサービスから起動
  3. OS起動時にサービスを起動
  4. コマンドを使用してサービスを起動

①HULFT管理画面のプロセスコントローラから起動

プロセスコントローラから起動する手順は以下のとおりです。
  1. 管理者権限でHULFT管理画面を起動します。
    (管理者権限所持者ではない場合、HULFTの起動ボタンが押下できなくなります。)

  2. [ツール]-[プロセスコントローラ]をクリックします。
    プロセスコントローラが起動されます。プロセスコントローラ画面を以下に示します。



    HULFTサービスの状態は、次のように「HULFT」の信号の色で示されています。
    青:「起動済」
    黄:「起動処理実行中」または「停止処理実行中」
    赤:「停止」

  3. 「HULFT」の[起動]ボタンをクリックします。
    HULFTサービスが開始され、信号が起動済を示す青に変わります。


    HULFTのサービスを起動すると前述で説明したようにシステム動作環境設定[プロセス自動起動]の設定に従って自動再起動されます。
    自動再起動を設定していない場合は、各プロセスごとに起動をすることができます

②コントロールパネルのサービスから起動

ここでは、Microsoft Windows 7の場合を例に、起動方法を説明します。
※Windowsのサービス一覧画面の表示方法はOSごとに異なりますので、OSのマニュアルを確認してください。
  1. Windowsに登録されているサービスの一覧リストからサービス名を選択し「サービスの開始」をクリックします。

③OS起動時にサービスを起動

登録されているサービスの「スタートアップの種類」の中から、“自動”を選択し、[OK]ボタンをクリックします。

          

このように登録しておくと、次回からOSの起動時にHULFTサービスも起動されます。

④コマンドを使用してHULFTサービスを起動

HULFTは、HULFTインストールフォルダにあるbinフォルダ内の「utlsvcctl.exe」を実行することでHULFTが起動します。
HULFT起動コマンドよりHULFTサービスを起動する手順は以下のとおりです。
  1. 管理者でコマンドプロンプトを起動します。
  2. HULFTインストールフォルダのbinフォルダ内に移動し、以下のコマンドを入力します。

    utlsvcctl -c start [-q]

    ●パラメータ説明
    -c start
     HULFTに対する、HULFTの起動要求(省略不可)

    -q
     非同期要求(省略可)
     HULFTの起動が完全に行われるのを待たず、要求を発行次第、制御を返します。

  3. Enterキーを押すとコマンドプロンプト上に「サービスが開始されました」と表示されます。 

起動の確認

Windowsタスクマネージャで、指定したプロセスが起動していることを確認します。

         

起動可否は、HULFT コンソールログファイル (hulcon.log) やイベントログに出力されます。

起動できない場合

プロセスが起動できない場合は、 HULFT コンソールログファイル (hulcon.log) を参照し、出力されているエラーコードやメッセージから状況を確認して対処します。
よくある例を記載しますので、該当しないかご確認ください。
  • HULFT の起動ユーザに権限が不足している。
  • [アカウント設定] に指定したアカウントで 1 度もログオンしていない場合、設定情報が存在しないため、 HULFT としてログオンできないためプロセスが起動できない。
  • 他のアプリケーションで指定しているポートと常駐プログラムのポートが重複している。
  • HULFTサービス(hulsrvc.exe)のプロセスのみが終了していてその他のプロセス(hulsdd.exe/hulrcv.exe/hulobs.exe)が残った状態となっている可能性がある。
この記事は役に立ちましたか?
1人中1人がこの記事が役に立ったと言っています

コメント