Невозможно запустить Apache Tomcat 8.5.4 в Ubuntu 16.04
Я установил следующий дистрибутив Tomcat: http://mirror.its.dal.ca/apache/tomcat/tomcat-8/v8.5.4/bin/apache-tomcat-8.5.4.tar.gz
Я следовал этой инструкции шаг за шагом: https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04
И я запустил службу с помощью команды sudo systemctl start tomcatЯ получил следующую ошибку:
Job for tomcat.service failed because the control process exited with error code. See "systemctl status tomcat.service" and "journalctl -xe" for details.
Спасибо за вашу помощь заранее!
5 ответов
Сделайте пользователя 'tomcat' владельцем всего каталога tomcat, используя следующую команду:
cd /opt && sudo chown -R tomcat tomcat/
Это сработало для меня.
В моем случае я забыл изменить значение для JAVA_HOME в /etc/systemd/system/tomcat.service соответствовать моим серверам JAVA_HOME, Поменял и все нормально работает.
По крайней мере, в Ubuntu и других ОС (например, CentOS), я понял, что эта проблема связана с разрешениями на выполнение сценариев в bin папка. В этом случае кроме смены владельца на пользователя tomcatнеобходимо предоставить разрешения на выполнение сценариев в ${TOMCAT}/bin папка, в частности к startup.sh а также shutdown.sh скрипты. Предполагая, что пакет Tomcat был извлечен в /opt/tomcat, затем:
sudo chmod 755 /opt/tomcat/bin/*.sh
После этого
sudo systemctl start tomcat
Похоже, это проблема с правами доступа. Вы должны выполнить следующую команду
sudo chmod -R +x tomcat/
Я следовал структуре каталогов в учебнике (в digitalocean), который вы читаете. Вы можете заменить tomcat/ dir своим собственным установочным каталогом
При выполнении systemctl запустить Tomcat
Ты получишь [Your Issue]
Job for tomcat.service failed because the control process exited with error code. See "systemctl status tomcat.service" and "journalctl -xe" for details.
Следуя приведенной выше инструкции по выполнению journalctl -xe вы получите следующий результат:
Tomcat appears to still be running with PID *PROCESS_ID*. Start aborted.
If the following process is not a Tomcat process, remove the PID file and try again:
UID PID PPID C STIME TTY TIME CMD
root 982 1 0 09:51 ? 00:00:00 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
Убейте процесс, используя (982 - это идентификатор процесса, показанный в результате journalctl)
sudo kill -9 *PROCESS_ID*
Затем выполните
systemctl start tomcat начать tomact.
Apache tomcat запущен и работает.
Но это может отключить соискателя 802.x, который отключает WiFi.
Чтобы решить эту проблему, выполните
sudo service network-manager restart
Надеюсь это поможет!