COBOL製品技術情報(FAQ)


Linux/UNIX 環境でのランタイムエラー 247 発生時の対応方法

【事象】
アプリケーションやライセンス管理システムを起動したら下記のエラーが発生しました。

エラーコード: 247, pc=0, call=1, seg=0
247  ライセンスエラー (Cannot communicate with licensing daemon)

【対応方法】
このエラーは COBOL ランタイムシステムの初期化時に、ライセンスデーモンとの通信に失敗したことを示しています。
ライセンスデーモンは以下の 2 つのプロセスで構成され、これらの一方もしくは両方が停止していると本エラーが発生します。

・lserv (Sentinel RMS License Manager)
・mfcesd (Micro Focus CES daemon)

両プロセスとも動作中の状態でも本エラーが発生する場合、各プロセス間の通信に何らかの問題が生じた状況と考えられます。
いずれの場合でも、一旦両プロセスを停止してから上記の順番で開始してください。
具体的な手順は以下の通りです。

1. スーパーユーザー権限 (root) でログインします。

2. /var/microfocuslicensing/bin ディレクトリに移動します。

# cd /var/microfocuslicensing/bin

3. ps コマンドで mfcesd プロセスが動作中か確認します。

# ps -ef | grep mfcesd | grep -v grep
 root     14725     1  0 Nov08 ?        00:00:01 /var/microfocuslicensing/bin/mfcesd

4. mfcesd プロセスが存在する場合、stopmfcesd.sh スクリプトを実行してこれを停止します。

# sh ./stopmfcesd.sh

5. 上記 3. を再実行し、まだ mfcesd プロセスが残っている場合は、kill コマンドで強制停止してください。

# kill -9 14725

6. ps コマンドで lserv プロセスが動作中か確認します。

# ps -ef | grep lserv | grep -v grep
 root     14715     1  0 Nov08 ?        00:00:01 /var/microfocuslicensing/bin/lserv

7. lserv プロセスが存在する場合、stoplserv.sh スクリプトを実行してこれを停止します。

# sh ./stoplserv.sh

8. 上記 6. を再実行し、まだ lserv プロセスが残っている場合は、kill コマンドで強制停止してください。

# kill -9 14715

9. startlserv.sh を実行して lserv プロセスを起動します。

# sh ./startlserv.sh

10. startmfcesd.sh を実行して mfcesd プロセスを起動します。

# sh ./startmfcesd.sh