Debian GNU/Linux wheezy で Tomcat 6 を再起動しようとしたら、なぜか Java が見つからないといわれた。
# /etc/init.d/tomcat6 restart
[....] Starting Tomcat servlet engine: tomcat6start-stop-daemon: unable to stat /usr/lib/jvm/java-6-openjdk/bin/java (No such file or directory)
[ ok eady running).
Java は OpenJDK 6 がインストール済み。
$ which java
/usr/bin/java
# java -version
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.6) (6b27-1.12.6-1~deb7u1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
Java のインストール場所は /usr/lib/jvm/ 以下にある。
# ls -la /usr/lib/jvm/
合計 36
drwxr-xr-x 4 root root 4096 4月 8 21:46 .
drwxr-xr-x 58 root root 20480 4月 8 21:46 ..
-rw-r--r-- 1 root root 2387 7月 12 2013 .java-1.6.0-openjdk-amd64.jinfo
lrwxrwxrwx 1 root root 24 3月 8 10:22 default-java -> java-1.6.0-openjdk-amd64
lrwxrwxrwx 1 root root 20 7月 12 2013 java-1.6.0-openjdk-amd64 -> java-6-openjdk-amd64
drwxr-xr-x 5 root root 4096 4月 8 21:46 java-6-openjdk-amd64
drwxr-xr-x 3 root root 4096 4月 8 21:46 java-6-openjdk-common
Tomcat 6 の設定ファイル /etc/default/tomcat6 に記述してある JAVA_HOME を /usr/lib/jvm/default-java に設定。
JAVA_HOME=/usr/lib/jvm/default-java
いままでは
JAVA_HOME=/usr/lib/jvm/java-6-openjdk
と記述していた。
この設定でいままで動いていたので、どこかのタイミングで Java の場所が変わってしまったのかもしれない。
Tomcat 6 の設定ファイルを書き換えたあと、 Tomcat 6 を再起動したら問題なく起動してくれた。
# /etc/init.d/tomcat6 restart
[ ok ] Starting Tomcat servlet engine: tomcat6.
今回の環境。
# cat /etc/debian_version
7.4
# uname -mrsv
Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.54-2 x86_64
# dpkg -l | grep openjdk
ii openjdk-6-jre-headless:amd64 6b27-1.12.6-1~deb7u1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-6-jre-lib 6b27-1.12.6-1~deb7u1 all OpenJDK Java runtime (architecture independent libraries)
# dpkg -l | grep tomcat
ii libtomcat6-java 6.0.35-6+deb7u1 all Servlet and JSP engine -- core libraries
ii tomcat6 6.0.35-6+deb7u1 all Servlet and JSP engine
ii tomcat6-common 6.0.35-6+deb7u1 all Servlet and JSP engine -- common files
Ref. [ヅ] Debian squeeze を wheezy へアップグレードした (2014-03-08)
tags: debian java openjdk linux tomcat
Posted by NI-Lab. (@nilab)