1つは標準インストールに含まれておらずあとでYaSTにソースを追加しないといけないこと、もう一つはJavaのファイルがFHSに準拠してシステムに 散在することである。
SuSEに収録されているTomcatは5.0であり、5.5は自前でセットアップしなければならない。
既存の9.3からできるだけ設定を流用してみる。
>http://en.opensuse.org/JA-Java
プロトコル:FTPサーバー:ftp.novell.co.jp ディレクトリ:pub/suse/opensuse/distribution/SL-10.0-OSS/inst-source-java/(pubの前にスラッシュが付かないように注意。)
上記操作でインストールできるパッケージがふえるので、1.5系を全部いれてみる
市販のTomcat本はみんなJavaの環境変数をユーザーの.bashrcとか.bash_profileに入れろと書いているが、私はできればサーバー単位で設定したい。そしてSuSEもそういう設定をサポートしている。
SuSEでは環境変数スクリプトははソフト毎に分割され、profile.d に格納されている。
Javaについては
/etc/profile.d/alljava.sh
というSuSE製のスクリプトが用意されている。JRE1.4,5,x64等の差を吸収しているらしい?,
しかしこのファイルはjavaのRPMではなく
aaa_base-10.0-28
に収録されている(反則だ!)
スクリプト内でバージョンの違いを判断したりしているが、最終的に下記の変数が作られる。
JAVA_BINDIR=/usr/lib/jvm/java/bin JAVA_HOME=/usr/lib/jvm/java JAVA_ROOT=/usr/lib/jvm/java JDK_HOME=/usr/lib/jvm/java JRE_HOME=/usr/lib/jvm/java/jre SDK_HOME=/usr/lib/jvm/java
SuSEはjavaのパッケージを/usr/bin等にfhsスタイルでインストールするため市販の本と全然違うことになる。とりあえず$JAVA_HOMEさえ得られればOKとしよう。
▼展開
JavaインストーラはRPM版も自己解凍版も一度実行ファイルにする必要がある。
chmod +x jdk-1_5_0_-linux-i586.bin ./jdk-1_5_0_ -linux-i586.bin
これでRPMまたは解凍されたディレクトリが出現する。
RPMの場合は下記ディレクトリに全部入る。
/usr/java/jdk1.5.0_06/
実は環境変数などは全く世話してくれないので注意。RPMである意味はあまりなく、しいて言えばインストール先ディレクトリが決まっていることぐらいだろうか?
「/usr/java/jdk1.5」あたりのシンボリックリンクを作ってバージョン番号の変動に対応する。
$java_home をどこかの環境設定ファイルに書く。
▼システム全体にセットする場合
/etc/profile.d/java.sh
SuSEを真似してこのようなスクリプトファイルを作って、
export $java_home="/usr/java/jdk1.5"
とか書く?
▼ユーザー毎の場合
/home/kei/.bash_profile or .bashrc
に上記の行を書く
ここから先はSuSE以外にはあまり役に立ちません
JKコネクタはTomcatとApacheの連動のために必要になる。
インストールすると、Apacheに対する特定ディレクトリ、ファイル名へのアクセスがTomcatに丸投げされるようになり、80ポートだけでサービスを提供できる。
Tomcatを8080ポートでそのまま使う場合は必要ない。
現在発行されている解説書はほとんどが新バージョンのJK2を対象にしているが、実はJK2は「関心の低さにより」開発中止になってしまっている。
15 November 2004 - JK2 is officially unsupported!に発表がある。書籍が現状に追いつくのはいつのことだろうか?
SuSE10収録はJK1.2.5相当らしい。下記ファイルが収録されている。
/usr/lib/apache2/mod_jk.so usr/share/doc/packages/mod_jk-ap20/jk.conf
ドキュメントディレクトリにサンプルのjk.confが収録されているのでこれを
/etc/apache2/conf.d
にいれる。
# cp /usr/share/doc/packages/mod_jk-ap20/jk.conf .
http://tomcat.apache.org/download-connectors.cgi
事前にC/C++開発ツール一式とApache*-develパッケージが必要。
完成品を/usr/lib... に入れるのは同じ。
jk.confに当たる部分はhttpd.confに直接書いても、conf.dにいれてもいい。
http://tomcat.apache.org/download-55.cgi#5.5.16
http://tomcat.apache.org/tomcat-5.5-doc/index.html
次の例では/opt にインストールしている。
RPMだと/usr/share/tomcat5 にインストールされるが人力インストールの場合は「usr/local/share/tomcat5.5」か?
tar -xzf apache-tomcat-5.5.16.tar.gz unzip apache-tomcat-5.5.16-admin.zip cp apache-tomcat-5.5xxxx /opt cd /opt ln -s apache-xxx tomcat55
ホームディレクトリは先に展開した場所を指定する。(SuSE9.3のものを参考に)
lightning9b:/etc # groupadd tomcat lightning9b:/etc # useradd -c "Tomcat - JSP/Servelet Engine" -d /opt/tomcat55 -s /bin/bash -g tomcat tomcat
デフォルトでOK
j2eeがTomcatの設定の主体であるが、RPMでTomcat5を入れないとこのファイルは得られない。 (私はSuSE9.3からコピーした... sample 拡張子は削ること)
インストール箇所(/usr/share/tomcat5)を指定しているのでこれを修正する。
・これもSuSE9.3からコピー。中身はそのまま。(sample)
/var/log/tomcat55 ディレクトリを作成し、元のログディレクトリは←へのシンボリックリンクにする。
先ほどの/etc/init.d/tomcat5 を作成しておくと、自動起動して、単体の起動や終了も楽になる。
/etc/init.d/tomcat55 -> /usr/sbin/rctomcat55としてシンボリックリンクを作成しておくと、よりSuSEらしくなる。この場合の起動コマンドは以下の通り。
>rctomcat55 start
▼手動起動
#cd /usr/share/tomcat5.5/bin #./startup.sh
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
以上で動く、はず。