[Operación y mantenimiento] El proceso del demonio de proceso de Linux se elimina y reinicia automáticamente el archivo jar

#!/bin/bash                                                                                                                                                                                               
                                                                                                                                                                                                          
while true                                                                                                                                                                                                
do  
    # 检查程序是否正在运行                                                                                                                                                                                                      
    pid=`ps -ef | grep javaServer | grep -v grep | awk '{print $2}'`                                                                                              
    if kill -0 ${pid} > /dev/null 2>&1                                                                                                                                                                    
    then                                                                                                                                                                                                  
        echo "pid=${pid} is running"                                                                                                                                                                      
        sleep 60                                                                                                                                                                                          
    else
        # 执行重启命令                                                                                                                                                                                                  
        echo "javaServerStartUp is not running, restarting"                                                                                                       
        sh /data/jar/start.sh                                                                                                                                   
        sleep 30                                                                                                                                                                                          
    fi                                                                                                                                                                                                    
done

El script anterior comprueba cada 30 segundos si el proceso del servidor Java se está ejecutando. Si no se está ejecutando, ejecute el comando de reinicio. Antes de ejecutar el script, debe confirmar el comando de inicio del servidor java y modificar la parte correspondiente del script.

Este script se puede guardar como un archivo (como restart_oap.sh) y ejecutarse en segundo plano con el comando nohup:
 

nohup bash restart_oap.sh > /dev/null 2>&1 &

De esta manera, incluso si cierra la ventana de la terminal, el script continuará ejecutándose en segundo plano y monitoreará y reiniciará regularmente javaServer.

Supongo que te gusta

Origin blog.csdn.net/G971005287W/article/details/131148085
Recomendado
Clasificación