Не запускается Tomcat

Автор Vladimir__, 01 марта 2020, 10:42:26

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Vladimir__

Здравствуйте!
Сразу предупреждаю новичок, первый раз вожусь с Linux. По учебе понадобилось запустить Java-приложение на сервере.

Установил Tomcat следующим образом:
groupadd tomcat
usermod -aG tomcat vladimir
su vladimir
cd /tmp
wget http://mirror.linux-ia64.org/apache/...-9.0.31.tar.gz
sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
sudo chgrp -R tomcat /opt/tomcat
sudo chmod g+x conf
sudo chown -R vladimir webapps/ work/ temp/ logs/

Прописал путь к java:
update-alternatives --list java (/usr/lib/jvm/jdk1.8.0_241/bin/java/)
Cоздал файл службы systemd:
sudo nano /etc/systemd/system/tomcat.service
Туда прописал:
Цитировать[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/jdk1.8.0_241
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=vladimir
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start tomcat


Добавил логин:
sudo nano /opt/tomcat/conf/tomcat-users.xml

Закоментировал:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

Далее проверяю статус:
sudo systemctl status tomcat

и вот в статусе присутствует "FAILURE" (см. скрин.), да и почему-то не отображается путь к Java и группа, хотя вроде должно отображаться (прописывал).
И при попытке открыть в браузере - сервер не доступен.

Подскажите в чем дело?

Еще 1-н момент, почему-то не видно порта 8080 среди действующих, на котором должен быть tomcat (см. скрин)
Попробовал его добавить, но результат нулевой
iptables -A OUTPUT -p tcp -m tcp --dport 8080 -j ACCEPT

Ещё  прописал (файла данного в этой директории не было, он создал его):
echo 'export CATALINA_HOME = "/ usr / local / tomcat9"'> /etc/profile.d/tomcat9.sh
echo 'export JAVA_HOME = "/usr/lib/jvm/jdk1.8.0_241"' >> /etc/profile.d/tomcat9.sh
echo 'export JRE_HOME = "/usr/lib/jvm/jdk1.8.0_241/jre"' >> /etc/profile.d/tomcat9.sh

Но когда пытаюсь считать и выполнить, как это указано в примере:
source /etc/profile.d/tomcat9.sh
он мне выдает, что недопустимый индентификатор (см. скрин):

  •  

ogost

Цитата: Vladimir__ от 01 марта 2020, 10:42:26update-alternatives --list java (/usr/lib/jvm/jdk1.8.0_241/bin/java/)
Эта команда лишь выдаёт список установленных версий.

Vladimir__

Цитата: ogost от 01 марта 2020, 14:22:08Эта команда лишь выдаёт список установленных версий.
В мануале было, что нужно прописать путь к установленной Java. Эта команда вроде как выводит путь, или это не то?
Как тогда правильно?
  •  

ogost

Да, этот путь нужно прописать в настройках tomcat.
Кажется я не правильно понял ваш первый пост.

Vladimir__

#4
Пытаюсь запустить Tomcat с помощью:
cd /opt/tomcat/bin
./startup.sh


Мне выводит  настройки (CATALINA, JRE_HOME, CLASS PATH) (скопировать из консоли не получается, см. на рис.), запуск Tomcat "Tomcat started", но когда я вывожу запущенные процесса - его там  нет
ps -ah

Хотя, если вывести более подробно запущенные процессы, то там что-то похожее на Tomcat есть (см. 2 рис.)
ps -ef
  •  

Vladimir__

Главная проблема мне кажется в том, что не верно "встают" переменные сред:

echo 'export CATALINA_HOME = "/opt/tomcat/"'> /etc/profile.d/tomcat9.sh
echo 'export JAVA_HOME = "/usr/lib/jvm/jdk1.8.0_241"' >> /etc/profile.d/tomcat9.sh
echo 'export JRE_HOME = "/usr/lib/jvm/jdk1.8.0_241/jre"' >> /etc/profile.d/tomcat9.sh

nano /etc/profile.d/tomcat9
export CATALINA_HOME = "/opt/tomcat/"
export JAVA_HOME = "/usr/lib/jvm/jdk1.8.0_241"
export JRE_HOME = "/usr/lib/jvm/jdk1.8.0_241/jre"



source /etc/profile.d/tomcat9.sh - ERROR
source /etc/profile.d/tomcat9
  •  

ChubaDuba

#6
Цитата: Vladimir__ от 01 марта 2020, 10:42:26Далее проверяю статус:
sudo systemctl status tomcat
Сервис у вас не стартует, а находится в стадии активации, о чём говирит Active: activating.
При успешном старте выхлоп должен быть примерно такой:

[offtopic]
Может всё дело в версии java? Практически во всех хаутушках по установке Tomcat
на Debian 10 используют OpenJDK:

$ sudo apt install default-jdk

Хотя с другой стороны разработчиком заявлено, что Tomcat 9 работает на java  ≧ 8
[/offtopic]
  •  

Vladimir__

#7
Цитата: ChubaDuba от 12 марта 2020, 23:29:37Может всё дело в версии java? Практически во всех хаутушках по установке Tomcat
на Debian 10 используют OpenJDK:
У меня Debian 9
Цитата: ChubaDuba от 12 марта 2020, 23:29:37Хотя с другой стороны разработчиком заявлено, что Tomcat 9 работает на java  ≧ 8
Дома на Windows Tomcat работает с 8 Java нормально

И меня смущают ошибки в переменных среды, почему он пишет про недопустимые индентификаторы?
  •  

qupl

Кавычки или их отсутствие не нравится, возможно. Нужно сравнить с эталонным конфигом каким-нибудь. Или почитать какой там формат значений.

Vladimir__

Цитата: qupl от 13 марта 2020, 10:32:55Кавычки или их отсутствие не нравится, возможно. Нужно сравнить с эталонным конфигом каким-нибудь. Или почитать какой там формат значений.
Кавычки есть:

echo 'export CATALINA_HOME = "/opt/tomcat/"'> /etc/profile.d/tomcat9.sh
echo 'export JAVA_HOME = "/usr/lib/jvm/jdk1.8.0_241"' >> /etc/profile.d/tomcat9.sh
echo 'export JRE_HOME = "/usr/lib/jvm/jdk1.8.0_241/jre"' >> /etc/profile.d/tomcat9.sh

nano /etc/profile.d/tomcat9
export CATALINA_HOME = "/opt/tomcat/"
export JAVA_HOME = "/usr/lib/jvm/jdk1.8.0_241"
export JRE_HOME = "/usr/lib/jvm/jdk1.8.0_241/jre"


Попытаюсь поменять на одинарные
  •  

qupl

Не нужно гадать, лучше прочитать man или в инете.

qupl

export CATALINA_HOME=/opt/tomcat/
я бы так написал

ChubaDuba

Я бы написал так:
export CATALINA_HOME="/opt/tomcat/"
export JAVA_HOME="/usr/lib/jvm/jdk1.8.0_241"
export JRE_HOME="/usr/lib/jvm/jdk1.8.0_241/jre"



Vladimir__

Цитата: qupl от 13 марта 2020, 17:07:34я бы так написал
Цитата: ChubaDuba от 13 марта 2020, 17:56:45Я бы написал так:
В общем всё дело было в переменных среды. Нужно дополнительно прописать:
кроме как в
Цитировать/etc/profile.d/tomcat9.sh
нужно было еще прописать в
Цитировать/etc/profile.d/tomcat9
:
export CATALINA_HOME="/opt/tomcat/"
export JAVA_HOME="/usr/lib/jvm/jdk1.8.0_241"
export JRE_HOME="/usr/lib/jvm/jdk1.8.0_241/jre"

И да какая-то ошибка в символах, убрал лишние пробелы после "=" и перебил сами символы "".
  •