Ставил из unstable то есть sid. Потом комментировал эту строчку в source.list .
Скрипта в /etc/init.d не существует. Запускать службу не трудно, но выключить или перезагрузить требует лишних движений.
Так как необходим серверный режим работы и нужно удобно управлять состоянием службы (on, off, reload), а скрипта из директории /etc/init.d в пакета не предусмотрели, и к тому же этот deluge бывает чудит, написан скрипт. Кое что нашёл в инете.
Была загвоздка с выключением служб, собственно с тем из-за чего это всё и писалось, но великие просторы интернета помогли найти решение:
PID=`ps ax | grep deluge | grep -v grep | sed -n 1p | awk '{print $1}'` .
Не забудьте после создания файла сделать chmod +x /etc/init.d/deluge .
Собственно скрипт в конце записи.
Я использую домашний GTK клиент, который соединён с сервером на 58846 порту и работаю как на локальной машине. Единственное отличие - путь сохранения торрента нужно вводить вручную. Иногда клиент создаёт много подключений на используемый порт и забивает канал по неизвестной причине. В таких случаях /etc/init.d/deluge reload самое оно, естественно после выключения клиента.
Также можно использовать WebUI, и даже работать через https, для этого необходимо создать сертификат.
Если назвать WebUI ласково "Веб мордой", можно передать то как оно работает. Pyton выдаёт ошибки , но в целом после перезагрузки какое-то время работает гуд.
WebUI по умолчанию висит на 8112 порту, можно изменить.
У пользователя, от которого будет работать служба, здесь находятся логин:пароль для подключения WebUI и других клиентов к демону:
~/.config/deluge/auth
Хотел изменить логин:пароль, но не нашёл где поменять эту пару для WebUI, пришлось вернуться на автоматически сгенерированный.
Хорошо бы дописать возможность выбора цели над состоянием которой происходит манипуляция. Например:
/etc/ini.d/deluge restart webui
/etc/ini.d/deluge restart daemon
Подумаю над этим.
В скрипте добавлена возможность писать в лог, подробности в комментариях к коду. По умолчанию /dev/null, none, но можно и изменить. Возможно получится отследить в чём ошибка "Веб морды".
Предупреждаю, скрипт может содержать ошибки.
Самое время сделать:
echo "0 * * * * torrent /etc/init.d/deluge reload" >> /etc/crontab .
###BEGIN###
#!/bin/bash
DAEMON=/usr/bin/deluged
CLIENT=/usr/bin/deluge
#loglevels (none, info, warning, error, critical, debug)
LOGLEVEL=none
#logfile location
LOGFILE=/dev/null
WEB_OPTIONS="-u web -l $LOGFILE -L $LOGLEVEL"
. /lib/lsb/init-functions
start () {
log_daemon_msg "Starting Deluge daemon & WebUI"
if start-stop-daemon --start --quiet -oknodo --exec $DAEMON; then {
log_progress_msg "Daemon started"
if start-stop-daemon --start --quiet -oknodo --background --exec $CLIENT -- $WEB_OPTIONS; then {
log_progress_msg "WebUI started"
log_end_msg 0
exit 0
}
else
log_end_msg 1
fi
}
fi
exit 1
}
stop () {
log_daemon_msg "Stopping Deluge daemon and WebUI"
CPID=`ps ax | grep deluge | grep -v grep | sed -n 2p | awk '{print $1}'`
if kill $CPID; then {
log_progress_msg "WebUI stoped"
DPID=`ps ax | grep deluge | grep -v grep |sed -n 1p | awk '{print $1}'`
if kill $DPID; then {
log_progress_msg "Daemon stoped"
log_end_msg 0
exit 0
}
else
log_end_msg 1
fi
}
fi
exit 1
}
restart (){
$0 stop
sleep 2
$0 start
exit 0
}
case "$1" in
start|go) {start}
;;
stop) {stop}
;;
restart|reload) {restart}
;;
*|help|-h)
echo "Usage: $0 {(start|go)|(stop)|(restart|reload)}"
exit 1
;;
esac
exit 0
###BEGIN###

