J'ai essayé d'arrêter Tomcat. Il a échoué avec ce message:
J'ai alors essayé à nouveau et j'ai eu ceci:
J'ai ensuite essayé de démarrer Tomcat en mode débogage et j'ai obtenu ceci:
Je leur ai supprimé /opt/Tomcat/work/catalina.pid et essayé de redémarrer et obtenu ceci:
Quelqu'un sait comment faire redémarrer Tomcat?
Il semble que Tomcat ait été arrêté. Je l'ai commencé et tout a bien commencé. Merci a tous.
J'ai eu ce message d'erreur après avoir démarré un serveur second Tomcat sur un serveur Linux.
$CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted.
Lors du démarrage du deuxième Tomcat, j'avais défini CATALINA_PID comme demandé mais mon erreur était de le définir dans un répertoire (j'ai supposé que Tomcat écrirait un nom de fichier par défaut avec le pid).
Le correctif consistait simplement à changer mon CATALINA_PID afin d’ajouter un nom de fichier à la fin de celui-ci (j’ai choisi catalina.pid parmi les exemples ci-dessus). Ensuite, je suis allé au répertoire et ai fait un simple:
touch catalina.pid
créer un fichier vide du nom correct. Puis, quand j'ai arrêté shutsh.sh, j'ai reçu le message:
PID file is empty and has been ignored.
Tomcat stopped.
Je n'avais pas la possibilité de tuer Tomcat car la JVM était utilisée, j'étais donc content d'avoir trouvé ça.
Récemment j'ai rencontré plusieurs fois d'arrêt anormal. Bien que shutdown.sh fournisse des informations, les situations sont les suivantes:
ps -ef| grep Java
est Null.ps -ef| grep Java
n'est pas nul. Mon avis est juste de tuer le processus de Catalina et de supprimer le fichier pid (Dans votre situation, se trouve /opt/Tomcat/work/catalina.pid.)
Le résultat ne semble pas sérieusement influencer les autres.
Assurez-vous que Tomcat n'est pas en cours d'exécution et que le fichier PID est supprimé. Eux, vous devriez démarrer Tomcat avec succès.
Si vous commencez à nouveau, alors:
setenv.sh
dans <CATALINA_HOME>/bin
.CATALINA_PID=/tmp/Tomcat.pid
(ou un autre répertoire de votre choix) pour que vous ayez plus de contrôle sur le processus Tomcat.Ensuite, pour démarrer Tomcat, recherchez catalina.sh
dans <CATALINA_HOME>/bin
et exécutez:
./catalina.sh start
et pour l'arrêter courir:
./catalina.sh stop 10 -force
De la doc du script catalina.sh
:
./catalina.sh
Usage: catalina.sh ( commands ... )
commands:
start Start Catalina in a separate window
stop Stop Catalina, waiting up to 5 seconds for the process to end
stop n Stop Catalina, waiting up to n seconds for the process to end
stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running
stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running
Remarque: Si vous souhaitez utiliser l'indicateur -force
, la définition de CATALINA_PID
est obligatoire.
Vous pouvez aller à l'emplacement $ {CATALINA_HOME}/logs / Open catalina.pid. Ici, nous allons obtenir le pid . Puis terminer le processus . Kill -9 pid
FIRST -> rm catalina.engine
ALORS -> ./startup.sh
NEXT TIME vous redémarrez -> ./shutdown.sh -force
parfois, si le même pid est en cours d'exécution après le redémarrage, Tomcat ne démarre pas
mon fichier pid était à Apache-Tomcat/temp/Tomcat.pid
change file Apache-Tomcat/bin/catalina.sh about line 386
from "ps -p $PID >/dev/null 2>&1"
to "ps -fp $PID |grep catalina >/dev/null 2>&1"
extrait du fichier catalina.sh
if [ ! -z "$CATALINA_PID" ]; then
if [ -f "$CATALINA_PID" ]; then
if [ -s "$CATALINA_PID" ]; then
echo "Existing PID file found during start."
if [ -r "$CATALINA_PID" ]; then
PID=`cat "$CATALINA_PID"`
ps -fp $PID |grep catalina >/dev/null 2>&1 #this line
if [ $? -eq 0 ] ; then
echo "Tomcat appears to still be running with PID $PID. Start aborted."
echo "If the following process is not a Tomcat process, remove the PID file and try again:"
ps -f -p $PID
exit 1
else
echo "Removing/clearing stale PID file."
rm -f "$CATALINA_PID" >/dev/null 2>&1
if [ $? != 0 ]; then
if [ -w "$CATALINA_PID" ]; then
cat /dev/null > "$CATALINA_PID"
else
echo "Unable to remove or clear stale PID file. Start aborted."
exit 1
fi
fi
fi
else
echo "Unable to read PID file. Start aborted."
Avez-vous essayé $ Sudo ./catalina.sh stop
? Cela a fonctionné dans mon cas.
Vous pouvez toujours essayer de tuer le processus au cas où vous rencontriez ce type de problème ..__ Vous pouvez obtenir l'ID du processus soit depuis PS, soit depuis un fichier pid, et tuer le processus.