touch: не может касаться `/usr/share/tomcat7/logs/catalina.out ': такого файла или каталога нет

8

У меня проблема с запуском tomcat с терминала. Я установил Tomcat, используя - sudo apt-get install tomcat7, несколько дней назад. Теперь, когда я запускаю его с помощью приведенной ниже команды, я получаю следующую ошибку:

~/tomcat7/bin$ sudo ./startup.sh

Using CATALINA_BASE:   /usr/share/tomcat7  
Using CATALINA_HOME:   /usr/share/tomcat7  
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp  
Using JRE_HOME:        /usr   
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
touch: cannot touch `/usr/share/tomcat7/logs/catalina.out': No such file or directory  
./catalina.sh: 389: ./catalina.sh: cannot create /usr/share/tomcat7/logs/catalina.out: Directory nonexistent

Я не могу понять, что пошло не так. Я смог получить доступ - http://localhost:8080когда я его установил. Но затем я запустил команду, чтобы отключить запуск во время загрузки:

sudo update-rc.d tomcat remove

И теперь это не начинается вообще. :(

Рохит Джайн
источник
Вы уверены, что используете Tomcat из пакетов Ubuntu? Я так не думаю ... Кажется, вы установили еще один из апстрима (in ~/tomcat7?), Так как тот из Ubuntu не будет записывать файлы журналов /usr/share/tomcat7/logs, но /var/logкуда-то. Разве вы не хотели запускать Tomcat как service tomcat start?
gertvdijk
@gertvdijk. О, Боже! Это работает сейчас. Похоже, Tomcat был установлен в качестве службы. Спасибо.
Рохит Джайн
@gertvdijk. У меня есть еще один вопрос. Я сейчас пытаюсь развернуть военный файл. Я скопировал его в /usr/share/tomcat7/webappsкаталог. Но когда я захожу на страницу, отображается ошибка 404. Затем я переместил файл войны в - /var/lib/tomcat7/webappsтам же он показывает ту же ошибку. Как бы я развернул войну? Если хотите, я могу опубликовать это как другой вопрос.
Рохит Джайн
@gertvdijk. Между тем, вы можете добавить свой комментарий в качестве ответа. Я приму это. Спасибо :)
Рохит Джайн
Пожалуйста, не задавайте новые вопросы в комментариях. Вместо этого задайте новый вопрос, нажав кнопку «Задать вопрос» в верхней части страницы.
gertvdijk

Ответы:

5

При установке с использованием tomcat7пакета предполагается, что вы запускаете и останавливаете Tomcat с помощью upstart ( service tomcat start) или /etc/init.d/tomcatсценария. Если вы запустите его с помощью startup.shсценария, то, скорее всего, его переменные окружения будут неправильно настроены.

Пожалуйста, посмотрите мой ответ на ваш предыдущий вопрос ( Как мне установить Apache Tomcat 7 для использования с Eclipse? ), Чтобы узнать, как лучше установить Tomcat, если вы не хотите запускать его как сервис.

Дэвид Эдвардс
источник
Хорошо. Я думаю, что я бы лучше установить частный экземпляр Tomcat. Могу ли я просто сделать - apt-get purge tomcat7удалить предыдущую?
Рохит Джайн
@RohitJain No. apt-getуправляет пакетами Ubuntu, а не файлами, которые вы установили из другого источника. Обратитесь к README / INSTALL или другой документации с вышестоящим источником другого установленного вами экземпляра. Пожалуйста, избегайте запуска программного обеспечения из исходного кода, если доступны пакеты Ubuntu. Как вы видите, вы только усложняете управление своей системой.
gertvdijk
@gertvdijk. Я установил его, используя apt-get install tomcat7только. Могу ли я удалить его так в этом случае?
Рохит Джайн
1

просто создайте отсутствующую папку следующим образом:

sudo mkdir /var/tomcat/logs

затем снова запустите tomcat вот так:

sudo sh /opt/apache-tomcat-{version}/bin/startup.sh

Само сообщение самоочевидно, если вы не знаете иерархию файловой системы Unix / Linux и как она работает, я настоятельно рекомендую вам начать просмотр некоторых руководств.

JulsLyon
источник
0

В моем случае я столкнулся с подобной проблемой, и tomcat7 не запустился бы.
Видимо /var/log/tomcat7папка была удалена из-за перезагрузки коробки ...

Вот как я исправил:

rwxrwxrwx 1 root    root      17 Feb 27  2014 logs -> ../../log/tomcat7
/var/log# mkdir tomcat7
/var/log/tomcat7# cd /etc/init.d/
/etc/init.d# ./tomcat7 start
dinbo
источник