Цитата(Danjkeee^ @ 24.12.2014, 22:35)

Приветствую, взял vds на mem-vds, выбрал шаблон ОС Debian7-CS 1.6, по умолчанию там был 1 сервер. Игровой сервер автоматически запускается при перезапуске системы, а так же перезапускается в случае остановки/падени и тд, все прекрасно работает. Я решил поднять еще один сервер, и тут начались сложности, делал все по примеру уже с настроенного сервера, создал еще один файл в /etc/init.d
Код
#!/bin/bash
### BEGIN INIT INFO
# Provides: gameserver_jail
# Required-Start: $network $remote_fs $syslog
# Required-Stop: $network $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Example initscript
# Description: This file should be used to construct scripts to be
# placed in /etc/init.d.
### END INIT INFO
SRV="gameserver_jail"
DIR="/home/gameserver_jail/cs"
PIDFILE="$DIR/$SRV.pid"
LOGFILE="$DIR/$SRV.log"
PID=`cat $PIDFILE 2>/dev/null`
DAEMON="$DIR/./hlds_run"
COMMANDLINE="+exec server.cfg +sv_lan 0 -secure -noipx -game cstrike -nojoy +port 27017 -pingboost 2 +sys_ticrate 1000 -sys_ticrate 1000 +map deathrun_arctic +maxplayers 32 -master -zone 8192"
NL=-19
do_start() {
if [ ! -e $PIDFILE ];
then
export LD_LIBRARY_PATH=".:$DIR"
echo "[`date`]-----------------start service--------------">>$LOGFILE
echo "Starting service $SRV..."`start-stop-daemon --start --nicelevel $NL --quiet --chuid gameserver_jail --group gameserver_jail --make-pidfile --pidfile $PIDFILE --chdir $DIR --exec $DAEMON -- $COMMANDLINE 1>>$LOGFILE 2>>/$DIR/$SRV.err &`" done"
else
echo "Service $SRV is already running."
fi
}
do_stop() {
if [[ "$PID" -eq "" ]];
then
echo "Service $SRV is not running."
else
echo "[`date`]-----------------stop service PID:$PID--------------">>$LOGFILE
PID_CH=`pgrep -P $PID`
echo "Stopping service $SRV..."`start-stop-daemon --stop --quiet --pidfile $PIDFILE`" done"
for i in $PID_CH; do
echo "kill $i..."`ps -p $i > /dev/null && (kill $i;sleep 1) && ps -p $i > /dev/null && (sleep 3; ps -p $i > /dev/null && kill -9 $i)`" done"
done
fi
/bin/rm -f $PIDFILE
}
do_status() {
if [[ "$PID" -eq "" ]];
then
echo "Service $SRV is not running."
else
echo "Service $SRV is running. PID is $PID"
fi
}
case "$1" in
start)
do_start
;;
stop)
do_stop
;;
restart)
do_stop
sleep 1
do_start
;;
status)
do_status
;;
*)
echo "Usage: /etc/init.d/$SRV {start|stop|restart|status}"
exit 1
;;
esac
exit 0
При запуске командой "service gameserver_jail start", создается лог файл с ошибкой "start-stop-daemon: group 'gameserver_jail' not found"
Кто знает как это исправить, я явно чего то не доделал, могли бы подсказать?)
Заранее спасибо.
во первых под каким пользователем запускаешь?
если под root то нечего не получится создай пользователя присвой пользователю папку а потом уже пробуй!если что стучись по контактам посмотрим что там у тебя!
Отредактировал: Vitalijkee, - 24.12.2014, 22:58