diff --git a/debian/freeswitch-sysvinit.freeswitch.init b/debian/freeswitch-sysvinit.freeswitch.init index 2b48cfd852..5f8b028bcc 100644 --- a/debian/freeswitch-sysvinit.freeswitch.init +++ b/debian/freeswitch-sysvinit.freeswitch.init @@ -18,7 +18,9 @@ NAME=freeswitch DAEMON=/usr/bin/freeswitch DAEMON_ARGS="-u freeswitch -g freeswitch -rp -nc -nonat" USER=freeswitch -PIDFILE=/var/run/$NAME/$NAME.pid +GROUP=freeswitch +RUNDIR=/var/run/$NAME +PIDFILE=$RUNDIR/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/var/lib/$NAME @@ -28,6 +30,11 @@ WORKDIR=/var/lib/$NAME . /lib/lsb/init-functions do_start() { + # Directory in /var/run may disappear on reboot (e.g. when tmpfs used for /var/run). + mkdir -p $RUNDIR + chown -R $USER:$GROUP $RUNDIR + chmod -R ug=rwX,o= $RUNDIR + start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \