Raspberry Piでは性能的に重いと分かりつつも、
JavaとTomcatを導入してみます。
Raspberry PiではSwing、Appletを利用しないため、
Headful版ではなく、Headless版を選択しました。
SoftFP版とHardFP版の違いは調べてません。
TomcatはCoreの最新版を選択しました。
【Java】 Oracle Java SE Embedded version 7 Update 60 ARMv6/7 Linux - Headless - Client Compiler EABI, VFP, HardFP ABI, Little Endian1 ejre-7u60-fcs-b19-linux-arm-vfp-hflt-client_headless-07_may_2014.tar.gz 【Tomcat】 apache-tomcat-7.0.55.tar.gz
FTPで「/home/ユーザ名」にダウンロードしておいたファイルを配置しておきます。
Javaはファイル名長いのでjava.tar.gzに変えました。
-
Java導入
mkdir /java cp -pi /home/ユーザ名/java.tar.gz /java cd /java tar xvzf java.tar.gz chown root.root -R ejre1.7.0_60 rm -f /home/ユーザ名/java.tar.gz rm -f java.tar.gz
-
Tomcat導入
Tomcatはroot以外のユーザで実行できるようにしておくと、
OS全体が乗っ取られる可能性があるということで、Tomcat専用ユーザを作成します。adduser Tomcat専用ユーザ名
変更後のパスワード入力。
変更後のパスワード再入力。
残りの項目は空でエンターを押下すれば問題なし。
最後に”Y”を入力。mkdir /tomcat cp -pi /home/ユーザ名/apache-tomcat-7.0.55.tar.gz /tomcat cd /tomcat tar xvzf apache-tomcat-7.0.55.tar.gz chown Tomcat専用ユーザ名.Tomcat専用ユーザ名 -R apache-tomcat-7.0.55 rm -f /home/ユーザ名/apache-tomcat-7.0.55.tar.gz rm -f apache-tomcat-7.0.55.tar.gz
Tomcat用の起動スクリプトを作成します。
vi /etc/init.d/tomcat.sh
2重起動防止のチェック処理等は実装していません。
#!/bin/sh # 環境変数を設定する。 export JAVA_HOME=/java/ejre1.7.0_60 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib export CATALINA_HOME=/tomcat/apache-tomcat-7.0.55 export CLASSPATH=$CLASSPATH:$CATALINA_HOME/lib # 第1引数の内容により条件分岐する。(start, stop, restart) case "$1" in 'start') if [ -f /tomcat/apache-tomcat-7.0.55/bin/startup.sh ]; then echo "Starting the tomcat service" "/tomcat/apache-tomcat-7.0.55/bin/startup.sh" fi ;; 'stop') echo "Stopping the tomcat service." "/tomcat/apache-tomcat-7.0.55/bin/shutdown.sh" ;; 'restart') $0 stop $0 start ;; *) echo "Usage: $0 {start|stop|restart}" ;; esac exit 0
実行権限を付与し、シェルを起動する。
chmod +x /etc/init.d/tomcat.sh /etc/init.d/tomcat.sh start
下記URLにアクセスする。
http://z-area.net:8080/examples/servlets/
Servletのサンプル画面が出てくれば成功。
現在はポート8080は閉じているため、外部からは開けません。次に自動起動できるように設定します。
insserv /etc/init.d/tomcat.sh insserv: warning: script 'tomcat.sh' missing LSB tags and overrides
タグがないと警告でていますが、気にしない方向で。
参考までに自動起動を停止する場合、は下記の通り。insserv -r /etc/init.d/tomcat.sh
以前までは「update-rc.d」で自動起動していたようですが、
Debian6以降では「insserv」が推奨のようです。
CentOSは「chkconfig」だったりとこの辺は勉強しないと分からない点が多いです。