Title: TeamPageが起動しません。どうすればいいですか?

ここでは、TeamPage の起動に失敗する現象とその原因、解決方法について解説します。

原因 (1) - lock ファイルが残っている
原因 (2) - ポートが競合している



注意点



TeamPage をサービスやデーモンとして起動すると、起動処理はユーザーから見えない「裏側」で行われます。起動時のメッセージを見ることができず、状況の把握するにはログをテキストエディタなどで開く必要があります。一方、TeamPage をアプリケーションとして起動すると、コンソール画面で動作状況を確認でき、状況調査が容易になります。動作状況を調査する間は、TeamPage をアプリケーションとして起動するようにしてください。

既にデーモンまたはサービスとして起動している場合は、アプリケーションとして起動する前に、[サーバーセットアップ] > [一般] > [サーバー管理] の [TeamPage のシャットダウン] ボタンをクリックして、一旦 TeamPage を停止してください。

TeamPage をアプリケーションとして起動するには、スタートメニューから [TeamPage を起動 (アプリケーション モード)] をクリックするか、TeamPage がインストールされた server フォルダの TractionApplication.exe を起動します。Linux の場合は拡張子のない TractionApplication を起動してください。

アプリケーションとしてTeamPage起動

原因(1) - lock ファイル



lock ファイルとは



TeamPage が起動すると、ジャーナルのフォルダの中に lockというファイルを作成します。このファイルがあるジャーナルは、他の TeamPage は触れることができません。これは、ジャーナルが複数の TeamPage によって同時に扱われて壊れてしまうことを防ぐための安全機能です。(複数の TeamPage から同時に書き込みがあると、データの整合性が崩れてしまうため)

TeamPage が正常にシャットダウンされると、lock ファイルは自動的に削除されます。しかし、TeamPage のシャットダウンが正しく行われなかった場合や、lock ファイルの削除プロセスより OS が早く停止してしまった場合など、lock ファイルがジャーナルのフォルダ中に残ってしまうことがあります。

すると、次回以降、TeamPage は「他の TeamPage によってジャーナルが使用されている」と解釈し、自らの起動を中止します。

Windows 環境での注意点



特に、Windows 上で TeamPage を運用する場合は注意が必要です。Windows が終了または再起動するとき、TeamPage サーバーが停止作業を行なっている間に Windows が終了してしまい、TeamPage が正しく終了できない場合があります。(参照 : FAQ806: Windows を終了/再起動する前に TeamPage を正しく停止させるには)

TeamPage 5.x 以降では、Windows 起動時にジャーナルに残された lock ファイルを自動的に削除し、TeamPage の起動を試みる仕様になっています。下図のように、Windows に「Unlock Traction on Boot」サービスが登録され、スタートアップの種類が「自動」になっていることを確認して下さい。

Unlock Traction Lock File on Boot Service

lock ファイルの確認と削除



TeamPage をアプリケーションとして起動した場合は、lock ファイルの場所が表示され、120秒のカウントダウンが表示されます。(カウントダウンが終了しても lock ファイルは削除されません)

ロックファイルにより起動しない

lock ファイルを削除するには、まず、ジャーナルが他の TeamPage で扱われていないことと、すべての TeamPage が停止していることを確認してください。そして、ジャーナルのフォルダを開き、lock ファイルを見つけ、手動で削除してください。

lockファイルの削除

lock ファイルの削除後、TeamPage ができるかどうか確認してください。

原因(2) - ポートの競合



TeamPage が使用するポートが別のアプリケーションやサービス(プロセス)によって使用済みの場合、競合を避けるためにTeamPage は起動を中止します。

このとき、TeamPage のコンソール画面には、次のようなメッセージが表示されます。

ポートの競合により起動不可

この対処方法は次の2つです。

  1. TeamPage が使用するポート番号を変更する
  2. ポートを使用しているプロセスを停止させる、あるいはプロセスの使用するポート番号を変更する


TeamPageが使用するポート番号を変更する



1. TeamPage が停止していることを確認し、TeamPage がインストールされた server フォルダを開き、その中の Traction.properties ファイルを見つけます。

2. Traction.properties をテキストエディタで開きます。

3. port=XXXX と書かれた行を見つけ(XXXXはポート番号)、この値を変更します。

使用ポートの変更

4. ファイルを上書き保存してテキストエディタを閉じます。

5. TeamPage を起動してポートの競合が発生しないかどうかを確認します。

ポートを使用しているプロセスを停止、または使用ポート番号を変更する



1. netstat コマンドを使って、指定したポート番号を使用しているプロセスを見つけます。

Windows の場合、netstat -anb を実行します。下図では、80番ポートを Skype が使用していることがわかります。

Windowsでnetstatを実行

Linux の場合、netstat -anp を実行します。下図では、80番ポートを httpd (Apache) が使用していることがわかります。

Linuxでnetstatを実行

2. ポートを使用していたプロセスを停止させるか、または使用ポート番号を変更します。プロセスの終了方法やポート番号の変更方法については、そのプロセスの開発元や販売元にお問い合わせください。

関連記事



FAQ2878: Windows起動時の「Unlock Traction on boot」サービスの警告を停止する方法

FAQ806: Windows を終了/再起動する前に TeamPage を正しく停止させるには



Attachments:
lockfile2.png
lockfile3.png
port1.png
port2.png
port3.png
port4.png
unlock_traction_on_boot_service.png
launch_traction_application.png
関連記事
Article: FAQ295 (permalink)
Categories: :FAQ:運用保守, :FAQ:トラブル
Date: 2009/11/10; 17時00分52秒 JST

Author Name: TeamPage サポート
Author ID: jpbo