Как остановить tomcat после изменения слова выключения в server.xml?
Запуск tomcat-7.0.33 на CentOS. У меня есть требование безопасности, чтобы изменить слово отключения tomcat в server.xml на случайную строку символов, поэтому мне нужно перейти от этого:
<Server port="8005" shutdown="SHUTDOWN">
что-то вроде этого
<Server port="8005" shutdown="8GVsi4lMZTX6aOzorJYexiq8K7ZGxaZ">
Однако, как только это на месте, я не могу перезапустить / остановить Tomcat через скрипт инициализации (/etc/init.d/tomcat stop
). Когда я пытаюсь это сделать, я получаю следующее в своем catalina.out:
Jul 22, 2014 8:09:28 PM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:499)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:371)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:453)
Простой вопрос: как мне изменить слово завершения работы в server.xml таким образом, чтобы я мог использовать скрипт инициализации, как всегда?
Или, если на это нет ответа, когда я изменяю слово завершения работы в server.xml, как мне перезапустить / остановить службу tomcat?
1 ответ
Выключите кота, затем измените его.
Вы также можете выполнить простую команду уничтожения Unix (она посылает сигнал INT, а не сигнал KILL) процессу. Это также чисто отключит кота.