Разница в выводе между сценарием init.d и служебным вызовом для tomcat6

Я обновил машину 12.04 до 14.04, используя do-release-upgrade. Все прошло хорошо, как обычно, но впоследствии у этой конкретной машины возникла очень странная проблема:

См. Вывод для service tomcat6 status:

root@box:/etc# service tomcat6 status
 * Tomcat servlet engine is running with pid 8763
root@box:/etc# service tomcat6 status
 * Tomcat servlet engine is running with pid 8763
root@box:/etc# service tomcat6 status
 * Tomcat servlet engine is running with pid 8763
root@box:/etc# service tomcat6 status
 * Tomcat servlet engine is running with pid 8763

Последовательный и правильный. (tomcat6 действительно работает как PID 8763).

Однако сценарий /etc/init.d/tomcat6 последовательно сообщает о другом исходе:

root@box:/etc# /etc/init.d/tomcat6 status
 * Tomcat servlet engine is not running, but pid file exists.
root@box:/etc# /etc/init.d/tomcat6 status
 * Tomcat servlet engine is not running, but pid file exists.
root@box:/etc# /etc/init.d/tomcat6 status
 * Tomcat servlet engine is not running, but pid file exists.
root@box:/etc# /etc/init.d/tomcat6 status
 * Tomcat servlet engine is not running, but pid file exists.

Что странно, потому что из-за отсутствия сценария upstart сценарий init.d фактически является тем, что service вызов использует для информации. Удаление сценария init.d подтверждает, что:

root@box:/etc# mv /etc/init.d/tomcat6 /root/
root@box:/etc# service tomcat6 status
tomcat6: unrecognized service
root@box:/etc# mv /root/tomcat6 /etc/init.d/
root@box:/etc# service tomcat6 status
 * Tomcat servlet engine is running with pid 8763

К сожалению, модуль Puppet, который я использую для вызовов /etc/init.d/tomcat6, и, как таковой, сообщает об отключении службы каждые 30 минут и выполняет перезапуск. Обновление модуля Puppet для использования вместо него вызова service является немедленным и очевидным решением, но это не объясняет и не фиксирует тот факт, что один и тот же сценарий может иметь два возможных результата в зависимости от того, как этот сценарий вызывается.

Может кто-нибудь объяснить, почему это происходит, и / или подсказать, как вернуть результаты в согласованное состояние?

1
задан 18 April 2016 в 14:32

0 ответов

Другие вопросы по тегам:

Похожие вопросы: