Tomcat6のインストール
サーバを借りた目的はTomcatを動かすことですが、128MBのプランではちょっと厳しそうな感じです。そこで256MBのプランへの変更をお願いしました。実際に変更されるまでの間、ただ待っているのもつまらないので、さし当たって不要なものを止めて、Tomcatを動かしてみることにします。不要なものを止める
とりあえず、apacheは使わないので止めてしまいます。次のコマンドでサービス名を確認します。# svcs -a|grep apache
online 16:13:13 svc:/network/http:cswapache2
svcsはサービスの一覧を表示するコマンドで -aは、現在動いていないものも含めてすべてを表示するオプションです。上の実行結果を見ると、cswapache2というのがapacheのサービス名のようです。そこで、次のコマンドでこのサービスを止めてみます。online 16:13:13 svc:/network/http:cswapache2
# svcadm disable cswapache2
# svcs -a|grep apache
disabled 17:10:41 svc:/network/http:cswapache2
ブラウザでhttp://j-webapp.zone-express.jp/にアクセスしてみると、どうやら止まっているようです。ついでにwebminも止めてしまいます。# svcs -a|grep apache
disabled 17:10:41 svc:/network/http:cswapache2
# svcs -a|grep webmin
online 17:19:42 svc:/application/management/webmin:default
# svcadm disable webmin
# svcs -a|grep webmin
disabled 17:20:33 svc:/application/management/webmin:default
MySQLは止めたくないのですが、メモリを増やしてもらうまでの間、とりあえず止めておきます。online 17:19:42 svc:/application/management/webmin:default
# svcadm disable webmin
# svcs -a|grep webmin
disabled 17:20:33 svc:/application/management/webmin:default
# svcs -a|grep mysql
online 16:12:19 svc:/network/cswmysql5:default
# svcadm disable cswmysql5
# svcs -a|grep mysql
disabled 17:23:24 svc:/network/cswmysql5:default
online 16:12:19 svc:/network/cswmysql5:default
# svcadm disable cswmysql5
# svcs -a|grep mysql
disabled 17:23:24 svc:/network/cswmysql5:default
配布ファイルの取得、展開、配置
tomcat.apache.orgからTomcatの配布ファイル(apache-tomcat-6.0.16.tar.gz)を取得し、サーバに転送します。サーバ上でコマンドラインからftpを起動して直接サーバにダウンロードしてもよいのですが、私はftpの操作にあまり慣れていないので、一度端末(Windows)にダウンロードしてからWinSCPを使ってサーバに転送しました。転送したファイルを、まずはホームディレクトリ(私の場合は/home/takegata)上で展開します。
$ gtar -xvzf apache-tomcat-6.0.16.tar.gz
展開してできたディレクトリ(apache-tomcat-6.0.16)の中にsmf_filesというディレクトリを作ります。$ cd apache-tomcat-6.0.16
$ mkdir smf_files
このディレクトリの中に、Tomcatをサービスとして登録するためのマニフェスト(tomcat.xml)とTomcatをサービスとして起動するためのスクリプト(svc-tomcat.sh)をコピーします。下のファイルはSunのサイトにあったTomcat5.5のCoolStackを参考に私が作った(というか、編集した)ものです。よかったら使ってください。$ mkdir smf_files
apache-tomcat-6.0.16を/optの下に移動します(以下はrootシェルで操作)。
# cd /opt
# mv ~takegata/apache-tomcat-6.0.16 .
シンボリックリンクを作成します。# mv ~takegata/apache-tomcat-6.0.16 .
# ln -s apache-tomcat-6.0.16 tomcat
tomcat/smf_filesディレクトリに移動します。# cd tomcat/smf_files
svc-tomcat.shに実行権を付与します。# chmod +x svc-tomcat.sh
svc-tomcat.shでTomcatが起動できるかテストします。# ./svc-tomcat.sh start
Using CATALINA_BASE: /opt/apache-tomcat-6.0.16
Using CATALINA_HOME: /opt/apache-tomcat-6.0.16
Using CATALINA_TMPDIR: /opt/apache-tomcat-6.0.16/temp
Using JRE_HOME: /usr/java
ブラウザでサーバの8080ポートにアクセスしてみて、Tomcatの画面が表示されれば、スクリプトはOKです。Using CATALINA_BASE: /opt/apache-tomcat-6.0.16
Using CATALINA_HOME: /opt/apache-tomcat-6.0.16
Using CATALINA_TMPDIR: /opt/apache-tomcat-6.0.16/temp
Using JRE_HOME: /usr/java

Tomcatの画面
ここでエラーが出るようでしたら、原因を調べて解決する必要があります。Tomcatの起動が確認できたら次のコマンドで停止します。
# ./svc-tomcat.sh stop
ここでも「ヒープが足りない」というメッセージが出ましたが、スクリプトが強制的に(kill -9 で)Tomcatを止めてくれるようです。次のコマンドで、tomcatをサービスとして登録します。
# svccfg import tomcat.xml
正しく登録できたか、確認します。# svcs -a|grep tomcat
disabled 18:00:10 svc:/application/tomcat:tomcat
Tomcatをサービスとして起動します。disabled 18:00:10 svc:/application/tomcat:tomcat
# svcadm enable tomcat
正しく起動できたか、確認します。# svcs -a|grep tomcat
online 18:10:29 svc:/application/tomcat:tomcat
onlineになっていれば、正しく起動しているはずです。何らかの問題があって、正しく起動できていない場合はここがmaintenanceになります。Tomcatを停止する場合は、online 18:10:29 svc:/application/tomcat:tomcat
# svcadm disable tomcat
と入力します。(とりあえず、ここまで)
投稿:竹形 誠司[takegata]/2008年 05月 06日 17時 31分
/更新:2009年 03月 31日 21時 10分