ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] Создание стартовых скриптов
@ 2009-08-26  3:31 Tsaryuk Maksim
  2009-08-26 18:22 ` Andrew Clark
  0 siblings, 1 reply; 3+ messages in thread
From: Tsaryuk Maksim @ 2009-08-26  3:31 UTC (permalink / raw)
  To: ALT Linux Community general discussions

Задался задачей запуска сервера TeamSpeak2.
Так как в репозитории такового нет, скачал с сайта разработчиков 
ts2_server_rc2_202319.tar.bz2

По мимо конфигов в нем есть бинарный файл - server-linux,
и стартовый скрипт - teamspeak2-server_startscript.

В системе создал юзера teamspeak, запретил ему вход в систему usermod 
-s /bin/false teamspeak

Подскажите, как теперь его добавить в автозагрузку. То есть как 
добавить его я знаю chkconfig --add, а вот как правильно написать 
стартовый скрипт нет.
Создал скрипт по шаблону:

#!/bin/sh
#
# Init file for teampeak service
#
# chkconfig: 345 91 19
# description:	teampeak service
# processname: teamspeakd
# config: /home/teamspeak/tss2_rc2/server.ini
# pidfile: /var/run/teamspeak/teamspeak.pid

# Do not load RH compatibility interface.
WITHOUT_RC_COMPAT=1

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

PIDFILE=/var/run/teamspeak/teamspeak.pid
LOCKFILE=/var/lock/subsys/teamspeak
PROCESSNAME=teamspeakd
RETVAL=0

start()
{
	get_status >/dev/null
	if [ $RETVAL -eq 1 ]; then
		echo "Removing stale pidfile"
		rm -f "$PIDFILE"
	fi
	start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" 
--expect-user teamspeak -- teamspeak2
	RETVAL=$?
	return $RETVAL
}

stop()
{
	stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user 
teamspeak -- teamspeak2
	RETVAL=$?
	return $RETVAL
}

restart()
{
	stop
	sleep 2
	start
}

reload()
{
	msg_reloading template
	stop_daemon --pidfile "$PIDFILE" --expect-user teamspeak -HUP -- 
teamspeak2
	RETVAL=$?
	return $RETVAL
}

get_status()
{
	status --pidfile "$PIDFILE" --expect-user teamspeak -- teamspeak2
	RETVAL=$?
}

# See how we were called.
case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	reload)
		reload
		;;
	restart)
		restart
		;;
	condstop)
		if [ -e "$LOCKFILE" ]; then
			stop
		fi
		;;
	condrestart)
		if [ -e "$LOCKFILE" ]; then
			restart
		fi
		;;
	condreload)
		if [ -e "$LOCKFILE" ]; then
			reload
		fi
		;;
	status)
		get_status
		;;
	*)
		msg_usage "${0##*/} 
{start|stop|reload|restart|condstop|condrestart|condreload|status}"
		RETVAL=1
esac

exit $RETVAL

Тут teamspeak2, как я понимаю, ищется в /bin ?
Исходя из этого я создал симлинк на скрипт запуска 
/home/teamspeak/tss2_rc2/teamspeak2-server_startscript

При попытке запустить получаю:
# service teamspeak2 start
Starting teamspeak2 service: Error starting daemon. Aborted
 
    [FAILED]

Подскажите, где ошибки, и где почитать о создании и синтаксисе 
стартовых скриптов?


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-08-27  4:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-08-26  3:31 [Comm] Создание стартовых скриптов Tsaryuk Maksim
2009-08-26 18:22 ` Andrew Clark
2009-08-27  4:31   ` Eugene Prokopiev

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git