linux - 初始化脚本进程 pid 不起作用

标签 linux red5 init.d

所以我安装了 red5 流媒体服务器,并且可以使用以下 init.d 脚本代码启动它并在关闭 ssh 终端窗口时保持启动状态:

#!/bin/bash
# For RedHat and cousins:
# chkconfig: 2345 85 85
# description: Red5 flash streaming server
# processname: red5
# Created By: Sohail Riaz (sohaileo@gmail.com)

PROG=red5
RED5_HOME=/usr/local/red5
DAEMON=$RED5_HOME/$PROG.sh
PIDFILE=/var/run/$PROG.pid

# Source function library
. /etc/rc.d/init.d/functions

[ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5

RETVAL=0

case "$1" in
    start)
    echo -n $"Starting $PROG: "
    cd $RED5_HOME
    $DAEMON >/dev/null 2>/dev/null &
    RETVAL=$?
    if [ $RETVAL -eq 0 ]; then
        echo $! > $PIDFILE
        touch /var/lock/subsys/$PROG
    fi
    [ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup"
    echo
    ;;
    stop)
    echo -n $"Shutting down $PROG: "
    killproc -p $PIDFILE
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG
    ;;
    restart)
    $0 stop
    $0 start
    ;;
    status)
    status $PROG -p $PIDFILE
    RETVAL=$?
    ;;
    *)
    echo $"Usage: $0 {start|stop|restart|status}"
    RETVAL=1
esac

exit $RETVAL

所以我只需输入“red5 start”、“red5 status”和“red5 stop”即可。

现在,我将 red5 文件夹重命名为 red5bak,并在新的“red5”文件夹中测试新的更新版本,该文件夹也使用 red5.sh 文件来启动。我可以手动启动它,没有问题,并且按预期工作,但是当使用上述命令和代码启动时,它说启动“正常”,但似乎没有启动,并且当使用“状态”命令时,我收到错误red5 dead but pid file contains

我尝试删除 var/run 和 lock 文件夹中的 pid red5 文件并重新启动服务器,但仍然遇到相同的问题。

如果我删除较新的 red5 文件夹并将旧文件夹重命名回来,那么脚本将再次运行,那么如何让它适用于较新的版本/文件?

如有任何帮助,我们将不胜感激,

谢谢。

最佳答案

该文件列在顶部的初始化脚本中:

PROG=red5
PIDFILE=/var/run/$PROG.pid

所以尝试删除它(作为root用户):

rm /var/run/red5.pid

关于linux - 初始化脚本进程 pid 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24966836/

相关文章:

actionscript-3 - 直接上传从网络摄像头捕获的视频

golang webapp init.d 脚本挂起

linux - 为什么在 Linux 中有时会有多个守护进程?

ubuntu - 如何让 logstash 在 Ubuntu 12.04 上作为服务运行,其中该进程由 root 以外的用户拥有?

maven - 我无法建立red5-hls-plugin

node.js - 错误 : spawn/data/craft/templates/node_modules/optipng-bin/vendor/optipng ENOENT

linux - 在 Debian Wheezy 上编译内核

MySQL 服务器最大化内存,Galera 集群

linux - 将 .txt 文件的内容分类为 .bash_profile

java - Java 是否足够快以进行实时屏幕共享?