Назад | Перейти на главную страницу

Tomcat не запускается на сервере Ubuntu

Исходный пост

Обновлено 31.05.2012

У меня есть VPS и сервер Tomcat работает без проблем более года. Однако Tomcat просто выключается сразу после обслуживания VPS и не может быть запущен снова неделю назад. Поэтому я заглянул в catalina.out и обнаружил, что на моем VPS отсутствует собственная библиотека Apache Tomcat:

root@cdou:/home/tomcat/logs# vim catalina.out May 28, 2012 8:32:02 AM
org.apache.catalina.core.AprLifecycleListener init INFO: The APR based
Apache Tomcat Native library which allows optimal performance in
production environments was not found on the java.library.path:
/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server:/usr/lib/jvm/java-6-openjdk/jre/lib/amd64:/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib/jni:/lib:/usr/lib

поэтому я погуглил и установил libtcnative-1, но все равно не повезло, теперь catalina.out дает мне это:

An older version 1.1.19 of the APR based Apache Tomcat Native library is installed, while Tomcat recommends a minimum version of 1.1.2

Я буду :

  1. Найдите какие-либо конкретные прослушиватели, которые используют настроенные приложения.
  2. Временно отключите iptables, чтобы я мог быть уверен, что порты не заблокированы
  3. Посмотрите, есть ли какая-то конкретная привязка к IP.
  4. Запустите Tomcat вручную (не как службу) и посмотрите, какие ошибки он выдает при запуске.

Надеюсь, это поможет .

Установка собственной библиотеки является оптимизацией и не остановит запуск Tomcat.

Следовательно, предупреждающее сообщение регистрируется только в INFO уровень;

INFO: The APR based Apache Tomcat Native library which allows optimal performance 
in production environments was not found

 

Следовательно, вы могли бы искать другое сообщение на SEVERE или CRITICAL уровень:

Вы можете искать такие серьезные ошибки при запуске;

# egrep "(SEVERE|WARN|CRIT|ERROR)" /var/log/tomcat6/catalina.out

SEVERE: The web application [/republish] appears to have started a thread named [Timer-1608] but has failed to stop it. This is very likely to create a memory leak.
SEVERE: The web application [/republish] appears to have started a thread named [Timer-1609] but has failed to stop it. This is very likely to create a memory leak.

 

Чтобы дважды проверить статус, вы можете запустить netstat -lntp | grep :8080 проверить, слушает ли его;

# netstat -lntp | grep ":8080"
tcp        0      0 :::8080      :::*        LISTEN     32195/java   

также ищите его в списке процессов;

# ps -ef | grep tomcat
root     20558 20374  0 13:39 pts/0    00:00:00 grep tomcat
tomcat   32195     1  1 May27 ?        00:56:16 /usr/lib/jvm/java/bin/java -Xmx1024M -Djava.awt.headless=true -XX:-HeapDumpOnOutOfMemoryError -classpath :/usr/share/tomcat6/bin/bootstrap.jar:/usr/share/tomcat6/bin/tomcat-juli.jar:/usr/share/java/commons-daemon.jar -Dcatalina.base=/usr/share/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.endorsed.dirs= -Djava.io.tmpdir=/var/cache/tomcat6/temp -Djava.util.logging.config.file=/usr/share/tomcat6/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager org.apache.catalina.startup.Bootstrap start

если у вас есть порт 8080, который слушает, и у вас есть запись в ps -ef output, затем он прошел фазу запуска и запускает сервер на порту 8080.

Если у вас все еще ничего нет, опубликуйте оставшуюся часть файла catalina.out, который был зарегистрирован во время фазы запуска tomcat6.