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