Script de inicialização para Red5 no Ubuntu 9.04

1

Estou criando um script de inicialização para Red5 no Ubuntu. Red5 está instalado em / opt / red5

A seguir está um script de trabalho em uma caixa do CentOS na qual o Red5 está em execução [código]

========== Inicie o script de inicialização ==========

 #!/bin/sh


    PROG=red5
    RED5_HOME=/opt/red5/dist
    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

[/ code] O que eu preciso substituir para o Ubuntu no script acima.

Meu Red5 está em / opt / red5 / e para começar manualmente eu sempre faço

/opt/red5/dist/red5.sh do Ubuntu Como eu não encontrei o rc.d / functions no Ubuntu no meu laptop também /etc/init.d/functions Eu não existia. Eu gostaria de poder usá-los com o serviço como as distribuições Red Hat fazem. Eu verifiquei / lib / lsb / init-functions.

    
por user49249 01.08.2010 / 21:16

2 respostas

1

O arquivo que você provavelmente deseja é /lib/lsb/init_functions .

Você diz que verificou esse arquivo. O que você quer dizer? Você tentou usá-lo no lugar de /etc/rc.d/init.d/functions nessa linha no script de inicialização? Você recebeu alguma mensagem de erro nos registros?

Você deve tentar modelar seu script depois de outros scripts em /etc/init.d .

    
por 01.08.2010 / 22:23
1

Ok, aqui está o que eu fiz é o script que está realmente funcionando

#The script to start Red 5 Tapas Mishra
##Begin some thing some thing
### BEGIN INIT INFO
# Provides:          Red5
# Required-Start:    No idea
# Required-Stop:     No idea
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Red5 Streaming Server
# Description:       Ubuntu init script for Red5 server
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON="/opt/red5/dist/red5.sh"
NAME="Red5"
RED5_HOME=/opt/red5/dist
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
DESC="Red5 Ubuntu Server"

. /lib/lsb/init-functions
set -e

PROCESS_DIR="/opt/red5/dist"

case "$1" in
  start)
        log_daemon_msg "Starting $DESC" "$NAME"
        start-stop-daemon --start --pidfile $PIDFILE \
                --chdir $RED5_HOME --background --make-pidfile \
                --exec $DAEMON
        log_end_msg $?
        ;;
   stop)
        log_daemon_msg "Stopping $DESC" "$NAME"
        start-stop-daemon --stop --quiet --pidfile $PIDFILE \

             --name java
        rm -f $PIDFILE
        log_end_msg $?
        ;;
  restart|force-reload)
        echo -n "Restarting $DESC: $NAME"
        start-stop-daemon --stop --quiet --pidfile $PIDFILE \
                --name java
        rm -f $PIDFILE
        sleep 1
        echo -e
        $0 start
        ;;
  *)
        echo "Usage: $0 {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0
    
por 08.08.2010 / 06:50

Tags