Скажите что нужно изменить в /etc/init.d/pyicq-t для того чтобы он запускал транспорт?
Вот так транспорт стартует нормально: /usr/bin/python /usr/share/pyicq-t/PyICQt.py -D -b -c /etc/pyicq-t/config.xml
Но как это всё демонизировать?
Вот что написано в моем /etc/init.d/pyicq-t:
=================================
#!/bin/bash
#
# PyICQt Start and stop pyicq-t.
# chkconfig: - 99 01
# description: PyICQt is an ICQ transport for Jabber/XMPP.
# config: /etc/pyicq-t/config.xml
# pidfile: /var/run/pyicq-t/pyicq-t.pid
# lockfile: /var/lock/subsys/pyicq-t
. /etc/rc.d/init.d/functions
prog="PyICQt"
exec="/usr/share/pyicq-t/PyICQt.py"
config="/etc/pyicq-t/config.xml"
pidfile="/var/run/pyicq-t/pyicq-t.pid"
lockfile="/var/lock/subsys/pyicq-t"
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon --user=pyicqt --pidfile=$pidfile $exec \ т
--background \
--config=${config} \
--log=/var/log/pyicq-t.log
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch $lockfile
return $RETVAL
}
stop() {
echo -n $"Shutting down $prog: "
killproc -p $pidfile
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f $lockfile
return $RETVAL
}
restart() {
stop
sleep 1
start
}
reload() {
echo -n $"Reloading $prog: "
killproc -p $pidfile $prog -HUP
RETVAL=$?
echo
return $RETVAL
}
force_reload() {
restart
}
rh_status() {
status -p $pidfile $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
reload)
reload
;;
force-reload)
force_reload
;;
status)
rh_status
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|try-restart|reload|force-reload|status}"
exit 2
esac
exit $?
Неужели никто не может
Неужели никто не может подсказать?
Никто больше не сможет мне
Никто больше не сможет мне подсказать? А то, каждый раз, как перезапускаю сервер, приходится лезть в инет, находить эту тему, копировать команду, и запускать через ssh... Боюсь, что кто-нибудь удалит эту тему, и я вообще не смогу его поднять... :(
содержимое /etc/init.d/pyicq-t
у меня следующее содержимое скрипта, рабочее:
#!/sbin/runscript# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-im/pyicq-t/files/pyicq-t-0.8-initd,v 1.2 2007/06/04 20:50:16 griffon26 Exp $
depend() {
need net
use jabber-server
}
start() {
ebegin "Starting ICQ Jabber Transport"
start-stop-daemon --start --pidfile /var/run/jabber/pyicq-t.pid --chuid jabber:jabber \
--exec /usr/bin/python /usr/lib/python2.6/site-packages/pyicq-t/pyicq-t.py -- \
-b -c /etc/jabber/pyicq-t.xml -l /var/log/jabber/pyicq-t.log
eend $?
}
stop() {
ebegin "Stopping ICQ Jabber Transport"
start-stop-daemon --stop --quiet --pidfile /var/run/jabber/pyicq-t.pid
eend $?
}
А строчка daemon
А строчка
правильно приведена? А то ведь после обратного слеша сразу должен быть конец строки, без пробелов всяких, и тем более без буковков т...
Нет, в оригинале ничего
Нет, в оригинале ничего подобного нет... всмысле буковки т... остальное всё как написано
И что происходит при запуске
И что происходит при запуске /etc/init.d/pyicq-t?
edit:
Я тут посмотрел, что в стартап-скрипте у Вас не запускается python. Сам PyICQt.py, без python PyICQt.py, запустится? Он исполним?
Если нет, надо в скрипте сделать нечто наподобие:
...prog="PyICQt"
exec="/usr/share/pyicq-t/PyICQt.py"
config="/etc/pyicq-t/config.xml"
pidfile="/var/run/pyicq-t/pyicq-t.pid"
lockfile="/var/lock/subsys/pyicq-t"
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon --user=pyicqt --pidfile=$pidfile /usr/bin/python $exec \
--background \
--config=${config} \
--log=/var/log/pyicq-t.log
RETVAL=$?
...
Ну и, может быть, добавить параметры, если нужно...
Я сделал, как вы написали,
Я сделал, как вы написали, тоже не запускается... как быть?