Comment SHUTDOWN Tomcat dans Ubuntu?

J’ai essayé d’arrêter tomcat comme indiqué ci-dessous, mais Tomcat semble toujours fonctionner (http: // localhost: 8080 /)

vandegraff@vandegraff-laptop:~$ /usr/share/tomcat6/bin/shutdown.sh Using CATALINA_BASE: /usr/share/tomcat6 Using CATALINA_HOME: /usr/share/tomcat6 Using CATALINA_TMPDIR: /usr/share/tomcat6/temp Using JRE_HOME: /usr 1 Nov, 2010 11:41:40 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.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:529) at java.net.Socket.connect(Socket.java:478) at java.net.Socket.(Socket.java:375) at java.net.Socket.(Socket.java:189) at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:422) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:337) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415) 

Pourquoi donc?


Update1 pour @hvgotcodes:

Sortie de ps -ax | grep java

1597? Ss 0:00 / usr / bin / jsvc -user tomcat6 -cp /usr/share/java/commons-daemon.jar:/usr/share/tomcat6/bin/bootstrap.jar -outfile SYSLOG -errfile SYSLOG -pidfile / var /run/tomcat6.pid -Djava.awt.headless = true -Xmx128M -Djava.endorsed.dirs = / usr / share / tomcat6 / approuvé -Datalina.base = / var / lib / tomcat6 -Dcatalina.home = / usr / share / tomcat6 -Djava.io.tmpdir = / tmp / tomcat6-temp -Djava.security.manager -Djava.security.policy = / var / lib / tomcat6 / work / catalina.policy -Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file = / var / lib / tomcat6 / conf / logging.properties org.apache.catalina.startup.Bootstrap

1598? S 0:00 / usr / bin / jsvc -user tomcat6 -cp /usr/share/java/commons-daemon.jar:/usr/share/tomcat6/bin/bootstrap.jar -outfile SYSLOG -errfile SYSLOG -pidfile / var /run/tomcat6.pid -Djava.awt.headless = true -Xmx128M -Djava.endorsed.dirs = / usr / share / tomcat6 / approuvé -Datalina.base = / var / lib / tomcat6 -Dcatalina.home = / usr / share / tomcat6 -Djava.io.tmpdir = / tmp / tomcat6-temp -Djava.security.manager -Djava.security.policy = / var / lib / tomcat6 / work / catalina.policy -Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file = / var / lib / tomcat6 / conf / logging.properties org.apache.catalina.startup.Bootstrap

1599? Sl 0:20 / usr / bin / jsvc -user tomcat6 -cp /usr/share/java/commons-daemon.jar:/usr/share/tomcat6/bin/bootstrap.jar -outfile SYSLOG -errfile SYSLOG -pidfile / var /run/tomcat6.pid -Djava.awt.headless = true -Xmx128M -Djava.endorsed.dirs = / usr / share / tomcat6 / approuvé -Datalina.base = / var / lib / tomcat6 -Dcatalina.home = / usr / share / tomcat6 -Djava.io.tmpdir = / tmp / tomcat6-temp -Djava.security.manager -Djava.security.policy = / var / lib / tomcat6 / work / catalina.policy -Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file = / var / lib / tomcat6 / conf / logging.properties org.apache.catalina.startup.Bootstrap

Est-ce que tous ces 3 processus – 1597, 1598, 1599 – devraient être tués?

Van, dans votre cas où tomcat ne s’arrêtera pas normalement, j’utiliserais

 ps ax | grep java 

pour trouver le numéro de processus java. Si cette commande retourne quelque chose, alors exécutez

 sudo kill -9 pid 

où pid est le numéro de processus. L’option -9 signifie ‘tue-le’, et normalement tu n’as pas besoin de ce genre de chose, mais puisque dans ta situation le processus ne s’arrêtera pas normalement, tu en as besoin.

La sortie de la première commande devrait ressembler à

 38678 s002 U 0:02.62 /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java -Djava.util.logging.config.file=/usr/share/apache-tomcat-6.0.26/conf/logging.properties -Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8086 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=xxxx -Djava.endorsed.dirs=/usr/share/apache-tomcat-6.0.26/endorsed -classpath /usr/share/apache-tomcat-6.0.26/bin/bootstrap.jar -Dcatalina.base=/usr/share/apache-tomcat-6.0.26 -Dcatalina.home=/usr/share/apache-tomcat-6.0.26 -Djava.io.tmpdir=/usr/share/apache-tomcat-6.0.26/temp org.apache.catalina.startup.Bootstrap start 

38678 est le numéro de processus. Sachez que d’autres processus Java peuvent être en cours d’exécution. En outre, cette sortie provient d’un mac, donc sur Ubuntu sera légèrement différent.

Essayer

 /etc/init.d/tomcat stop 

(peut-être que vous devez écrire quelque chose après tomcat , appuyez simplement sur la touche tabulation une fois)

Edit: Et vous devez aussi le faire en tant que root.

Essayez d’utiliser cette commande: (cela arrêtera le servlet de Tomcat, cela aide vraiment)

service sudo tomcat7 stop

ou

sudo tomcat7 redémarrer (si vous avez besoin d’un redémarrage)

Pour arrêter le processus Apache, essayez cette commande

ps aux | grep tomcat | awk ‘{print $ 2}’ | xargs tue -9

Pour plus de grâce, essayez ce qui suit:

Avertissement: J’utilise Debian 7, pas Ubuntu, même si c’est un dérivé de Debian

Si vous exécutez Tomcat en tant que service, vous pouvez obtenir une liste de tous les services en cours d’exécution en tapant:

service sudo –status-all

J’exécute Tomcat 7, qui s’affiche sous la forme tomcat7 dans la liste. Ensuite, pour le fermer, tapez simplement:

service sudo tomcat7 stop

Si vous avez installé tomcat manuellement, exécutez le shutdown.sh(/.../tomcat/bin) partir du terminal pour le fermer facilement.

Lorsque vous exécutez Tomcat sous jsvc, il ne répondra pas au signal d’arrêt du port d’arrêt spécifié envoyé par le script shutdown.sh. La seule façon dont je suis conscient est de tuer le processus, mais vous devrez tuer ceux listés comme jsvc, pas java.

si vous exécutez cette commande

  debian@debian:~$ /usr/share/tomcat7/bin/shutdown.sh then your server will not stop and you will get o/p like that you provided if you use in super user mode then effect will appear o/p will come like this debian@debian:~$ sudo /usr/share/tomcat7/bin/shutdown.sh [sudo] password for debian: Using CATALINA_BASE: /var/lib/tomcat Using CATALINA_HOME: /var/lib/tomcat Using CATALINA_TMPDIR: /var/lib/tomcat/temp Using JRE_HOME: /usr/lib/jvm/java-1.6.0-openjdk Using CLASSPATH: /var/lib/tomcat/bin/bootstrap.jar:/var/lib/tomcat/bin/tomcat-juli.jar 

Si vous avez installé Tomcat, vous pouvez le faire:

 sh path2tomcat/bin/shutdown.sh 

Aucune des solutions suggérées n’a fonctionné pour moi.

J’avais lancé le tomcat restart avant de terminer le déploiement, ce qui a perturbé mon application Web.

EC2 a exécuté automatiquement Tomcat et Tomcat était bloqué en essayant de se connecter à une connexion de firebase database qui n’était pas configurée correctement.

Je voulais juste supprimer mon contexte personnalisé dans server.xml, redémarrer tomcat et rappend le contexte.