- - PR -
Tomcat5.0.28のshutdown.sh実行時のエラーに関して
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-11-24 19:50
環境変数 JAVA_OPTS か CATALINA_OPTS に -Djava.net.preferIPv4Stack=true を
設定するとどうなるでしょうか。 起動時、終了時ともに設定してみて下さい。 ちなみに telnet で 8005 番ポートに接続して Server 要素の shutdown 属性で指定したパスワードを入力すれば Tomcat は停止します。 | ||||||||||||
|
投稿日時: 2006-12-02 01:13
返信遅くなって申し訳ないです。
とりあえずはしもとさんの方法試しました tomcatの起動スクリプトから読み込まれているtomcat.confに 環境変数設定したのですが、症状はいかのとおりです。 service tomcat start とか stop とか restart をしても Usage: /etc/init.d/tomcat {start|stop|restart|status} とメッセージがでて起動もできなくなりました。 なんなのでしょうかね??? うーーん困りました。 shutdownポートの8005に問題がありのでしょうか? | ||||||||||||
|
投稿日時: 2006-12-02 14:36
環境変数を設定したくらいで起動も出来なくなるくらいだから、 その起動スクリプトという物が問題の原因ではないかと思います。
telnet で Tomcat を停止する方法を試しても停止できなかったなら 8005 番ポート関連に問題があるのでしょう。 | ||||||||||||
|
投稿日時: 2006-12-02 20:27
ありがとうございます。
問題が複数混在しそうなので、とりあえず 起動スクリプトを 下記に記載させていただきます。 /etx/rc.d/init.d/tomcatの内容: #!/bin/bash # # Startup script for the tomcat # # chkconfig: 345 80 15 # description: Tomcat is a Servlet+JSP Engine. # Source function library. . /etc/rc.d/init.d/functions # Load additional setting TOMCAT_CONF=/usr/local/tomcat5/tomcat.conf [ -r $TOMCAT_CONF ] && . $TOMCAT_CONF start(){ if [ ! -f /var/lock/subsys/tomcat ]; then echo "Starting tomcat" /usr/local/tomcat5/bin/startup.sh touch /var/lock/subsys/tomcat else echo "tomcat allready running" fi } stop(){ if [ -f /var/lock/subsys/tomcat ]; then echo "Shutting down tomcat" /usr/local/tomcat5/bin/shutdown.sh until [ -z $(/sbin/pidof java) ]; do :; done rm -f /var/lock/subsys/tomcat else echo "tomcat not running" fi } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) /usr/local/tomcat5/bin/catalina.sh version ;; *) echo "Usage: $0 {start|stop|restart|status}" esac exit 0 ーーーーーーーーーー /usr/local/tomcat5/tomcat.conf の内容 # The setteing for tomcat deamon export PATH=/usr/local/jdk1.5.0_05/bin:$PATH set CATALINA_OPTS="-Djava.net.preferIPv4Stack=true" export CATALINA_OPTS export JAVA_HOME=/usr/local/jdk1.5.0_05 export JRE_HOME=/usr/local/jdk1.5.0_05/jre export TOMCAT_HOME=/usr/local/tomcat5 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 8005:のポートですがtomcatを起動して20秒ほど経たないと 待ち状態になりませんね。それまでに /usr/local/tomcat5/bin/shutdown.sh を実行すると冒頭のエラーになるみたいです。 ただ、OSのシャットダウン時にTOMCATが起動状態ですと必ず、このスレの最初のエラー が出ます。ひょっとしてこれは起動スクリプトに問題ありなのでしょうか? 起動スクリプトにstartからshutdownの間にdelay(?)みたいなことができれば どうなのかなと思います。(素人の考えなので気にしないでください) 起動スクリプトの起動時のプロセスとshutdown時のプロセスがいまいちわかっていない素人です。 いろいろと意見をいただいて感謝しております。 みなさまもう少しこの素人につき合ってやってください。 よろしくお願いします。 | ||||||||||||
|
投稿日時: 2006-12-02 22:25
bash の環境変数設定に set は付けません。 TOMCAT_HOME は CATALINA_HOME の間違いでしょうか。 というか 5.0.x って JDK5 で問題無いのでしたっけ。
startup.sh (catalina.sh) が終了してもそれが Tomcat の起動処理の 完了ではありません。 スクリプトは Tomcat の java プロセスを バックグラウンドで起動したら終了してしまいます。 Tomcat の起動処理が完了するのは大概そのずっと後です。 Tomcat が起動完了しないうちに終了処理を実行したら エラーになっても不思議ではないです。 そちらの環境での起動処理の進行具合はログで分かると思うので確認して下さい。 ちなみに Celeron 300MHz で動かしていた頃、起動完了に 30 秒以上かかって いた気がします。
私の rc スクリプトは、起動後に 8005 番ポート等を見て LISTEN 状態になるか、 ある程度時間が経過しないと start 処理が終了しない様になっています。 | ||||||||||||
|
投稿日時: 2006-12-02 22:37
引用:
-------------------------------------------------------------------------------- 私の rc スクリプトは、起動後に 8005 番ポート等を見て LISTEN 状態になるか、 ある程度時間が経過しないと start 処理が終了しない様になっています。 -------------------------------------------------------------------------------- そのスクリプト公開していただくわけには行かないでしょうか? 引用: -------------------------------------------------------------------------------- Celeron 300MHz で動かしていた頃、起動完了に 30 秒以上かかって いた気がします。 -------------------------------------------------------------------------------- Intel 800MHz です。。。。 | ||||||||||||
|
投稿日時: 2006-12-03 14:37
結局このパターンか。
BBコードの CODE を使うと正しく書けないので QUOTE にしました。 インデントは適当に付けて下さい。
[ メッセージ編集済み 編集者: はしもと 編集日時 2006-12-03 14:41 ] [ メッセージ編集済み 編集者: はしもと 編集日時 2006-12-03 14:43 ] [ メッセージ編集済み 編集者: はしもと 編集日時 2006-12-03 14:46 ] | ||||||||||||
|
投稿日時: 2006-12-09 22:57
はしもとさん>>
ありがとうございました。 返信が遅くなってすみません。 あれから自分なりにいろいろと調べた結果、起動スクリプトがうまくrc.dに登録されてなかったのが原因でした。。。。 いろいろとありがとうございました。 勉強になりました。 linuxはまだまだチンぷんカンプンですのでまたいろいろ教えてください |