Скажите что нужно изменить в /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=$?
...
Ну и, может быть, добавить параметры, если нужно...
Я сделал, как вы написали,
Я сделал, как вы написали, тоже не запускается... как быть?