2014-01-16 30 views
0

我试着去阻止PUMA服务器,我已经在这里找到了一个脚本 - >scriptPUMA,试图阻止服务器,无效信号,电话号码或姓名

#!/usr/bin/env bash 

# Simple move this file into your Rails `script` folder. Also make sure you `chmod +x puma.sh`. 
# Please modify the CONSTANT variables to fit your configurations. 

# The script will start with config set by $PUMA_CONFIG_FILE by default 

PUMA_CONFIG_FILE=config/puma.rb 
PUMA_PID_FILE=tmp/pids/puma.pid 
PUMA_SOCKET=tmp/sockets/puma.sock 

# check if puma process is running 
puma_is_running() { 
    if [ -S $PUMA_SOCKET ] ; then 
    if [ -e $PUMA_PID_FILE ] ; then 
     if cat $PUMA_PID_FILE | xargs pgrep -P > /dev/null ; then 
     return 0 
     else 
     echo "No puma process found" 
     fi 
    else 
     echo "No puma pid file found" 
    fi 
    else 
    echo "No puma socket found" 
    fi 

    return 1 
} 

case "$1" in 
    start) 
    echo "Starting puma..." 
    rm -f $PUMA_SOCKET 
    if [ -e $PUMA_CONFIG_FILE ] ; then 
     bundle exec puma --config $PUMA_CONFIG_FILE 
    else 
     bundle exec puma --daemon --bind unix://$PUMA_SOCKET --pidfile $PUMA_PID_FILE 
    fi 

    echo "done" 
    ;; 

    stop) 
    echo "Stopping puma..." 
     kill -s SIGTERM `cat $PUMA_PID_FILE` 
     rm -f $PUMA_PID_FILE 
     rm -f $PUMA_SOCKET 

    echo "done" 
    ;; 

    restart) 
    if puma_is_running ; then 
     echo "Hot-restarting puma..." 
     kill -s SIGUSR2 `cat $PUMA_PID_FILE` 

     echo "Doublechecking the process restart..." 
     sleep 5 
     if puma_is_running ; then 
     echo "done" 
     exit 0 
     else 
     echo "Puma restart failed :/" 
     fi 
    fi 

    echo "Trying cold reboot" 
    script/puma.sh start 
    ;; 

    *) 
    echo "Usage: script/puma.sh {start|stop|restart}" >&2 
    ;; 
esac 

当我试图阻止它,它给我这个错误

/etc/init.d/puma: 54: kill: invalid signal number or name: SIGTERM 

我在这里错过了什么?

回答

0

当该脚本正在执行时,它使用不支持这些参数的kill版本。

你应该可以改变kill -s SIGTERM来杀死-15(这通过15 sigterm代码)

相关问题