4.2 Linuxサーバー上でリスナー・ジョブを実行する
Linuxサーバーには、lcolctlというリスナー制御ユーティリティがあります。このユーティリティ(lcolctl)により、リスナーが実行中であるか、リスナーが開始されているか、リスナーが停止されているかということを確認することができます。
このユーティリティを使用する前にシェルコマントプロンプトを開始し、設定スクリプト{lansa_root}/x_lansa/bin/setenv.sh をロードして下さい。この設定スクリプトは標準シェルsh とbash の対象になります。他のシェルを利用する場合は、そのシェルに対してsetenv.sh を適用させて下さい。
標準シェルsh または bash を使用している場合、次のコマンドでLANSA for Linux を実行させるためのコマンドプロンプト環境を設定できます。:
. {lansa_root}/x_lansa/bin/setenv.sh
{lansa_root} をLANSA for Linux インストールのディレクトリ、例えば/lansaに置き換えて下さい。設定スクリプトが LANSAXROOT や X_RUN Y などの環境変数を設定します。この設定がLANSA forLinux をコマンドプロンプトで使用するにあたって重要な鍵となります。この設定スクリプトはまたコマンドパスや共有ライブラリのパスも更新します。
To start or stop the listener, you need to use a shell command prompt logged in as root. For other operations, you may log in as any user belongs to the group that owns the installation directory.
リスナーを開始するには、次のコマンドを使用して下さい。(ルートで実行して下さい。):
lcolctl start {port}
{port} はリスナーのポート番号です。インストーラーのポート番号を指定しなければ、省略値は4545 となります。現在のポート番号が分からない場合は、リスナーの構成ファイルlisten.dat. で確認できます。
例えば 、リスナーのポート番号が4444 の場合は
lcolctl start 4444
となります。
リスナーを停止するには、これと似たコマンドを使用します。(ルートで実行して下さい):
lcolctl stop {port}
例:
lcolctl stop 4444
リスナーが実行されているか確認するには次のコマンドを使用します。:
lcolctl show
例えばインストールのリスナーが実行されている場合、次のような表示になります。:
Port PID SID
4545 15489
これはリスナーが実行されていて、ポート番号4545 を見ていることを示します。また15489 は処理IDです。SID 欄は現バージョンではもう使用されておらず、通常はブランクになっていることに注意して下さい。
またLinux の標準ps コマンドを使ってシステム上で実行されている(使用中のインストールバージョン以外も含む)全てのリスナーを確認できます。例えば:
ps -ef | grep lco
Linux サーバーでリスナーが実行されている場合、次のような表示になります。:
root 15489 1 0 Jul01 ? 00:00:00 /lansa/connect/lcolist: [monitor]
root 15490 15489 0 Jul01 ? 00:00:00 /lansa/connect/lcolist: listening on port 4545
システム上で複数のリスナーが実行されている場合は上記のようなエントリーが見られます。
リスナーが停止していてもlcolctl stop コマンドを使用して適切に終了されていない場合は、例えばシステムのシャットダウンの一連処理の中で終了された場合など、lcolctl show コマンドがリスナーがまだ実行されていると誤って表示する可能性があります。lcolctl start コマンドを使って再度リスナーを開始しようとすると、コマンドは以下のようなメッセージでエラーとなります。:
Port 4545 already in use
この場合、まず lcolctl stop コマンドを使用してから、lcolctl start コマンドで再度リスナーを開始して下さい。