На сервере BitTorrent клиент Deluge и управлять им через web-интерфейс(WebUI). К сожалению WebUI поддерживает не все возможности Deluge. Особенно в плане плагинов, большую часть которых невозможно сконфигурировать через WebUI. К счастью графический (GTK UI) интерфейс Deluge позволяет соединяться с клиентом удалённого сервера и управлять им с той же лёгкостью, с которой управляется локальный клиент.
Мы имеем: Удалённый сервер (в локальной сети) под управлением Debian 7 и установленным на него демоном Deluge в паре с WebUI, а так же домашний компьютер под управлением Linux Mint 14 (Ubuntu 12.10). Процесс установки серверной части мы опустим, так как он подробно расписан в , посвящённой Deluge. Переходим к настройкам и установке клиентской части на домашний ПК.
Стоит заметить, что наличие WebUI на сервере не обязательно, но лишним он не будет, если вы планируете подключаться к Deluge не только из дома. В связи с этим начать настройки можно тремя способами, предварительно установив GTK UI на локальный компьютер:
aptitude install deluge deluge-gtk
После запускаем демон на сервере и задаём логин и пароль для удалённого доступа. Команду нужно выполнить от имени пользователя, от которого работает Deluge Daemon.
echo "username:password:level" >> ~/.config/deluge/auth
Где «username» - пользователь, «password» - пароль, а «levil» - уровень доступа. Пользователь и пароль могут быть произвольными. Необязательно, чтоб они совпадали с именем пользователя, от которого работает демон. Демон при этом должен быть запущен.
Уровни доступа:

  • 1 - только чтение.
  • 5 - пользователь.
  • 10 - Администратор.
1. Первый способ подразумевает наличие WebUI на сервере. В настройках необходимо включить удалённый доступ к демону, дабы дать нам возможность соединяться с Deluge удалённо.

2. Во втором способе мы используем Deluge Console. Для этого её нужно установить на сервер.
aptitude install deluge-console
Запускаем консоль
deluge-console
В ней командуем:
config -s allow_remote True config allow_remote
Выходим из консоли:
exit
Все действия с консолью так же нужно выполнять от имени пользователя, от которого работает Deluge.
Перезагружаем демон:
/etc/init.d/deluge-daemon restart
3. В третьем способе мы используем SSH-туннель от домашнего компьютера к серверу. В этом случае включать удалённый доступ на стороне сервера необязательно. Открываем локальный терминал и пишем следующее:
ssh -fNL 127.0.0.2:58846:localhost:58846 server
Где «server» - ip-адрес нашего сервера. Мы используем 127.0.0.2 вместо localhost, так что клиент знает, что мы соединяемся с удалённым демоном. Если у вас вылетает ошибка «bind: Can"t assign requested address», то выполняем следующую команду (добавляем алиас к локальной петле):
sudo ifconfig lo0 add 127.0.0.2
После чего повторяем предыдущую команду.
Далее запускам GTK UI на локальном компьютере и в настройках интерфейса снимаем галку напротив Классического Режима (Classic Mode), после чего перезапускам UI. Теперь при старте GTK UI мы видим всплывающее окно Менеджера Соединений. Удаляем из списка локальный демон и прописываем адрес удалённого. В зависимости от способа, выбранного ранее, в поле Hostname прописываем либо ip нашего сервера, где располагается Deluge, либо, в случае ssh-туннеля, 127.0.0.2. Порт не трогаем, если не меняли порт демона во время конфигурации серверной части. Имя пользователя и пароль - указываем данные, которые мы задавали в файле ~/.config/deluge/auth.


На этом всё. Если всё сделано правильно, то мы смелом можем соединяться с демоном через локальный GTK UI, в котором нам будет доступно всё то, чем мы не могли воспользоваться через WebUI.
На скриншоте показано два соединения. Первое - удалённое, требующее включённой ранее опции, разрешающей удалённый доступ к демону. Второе - соединение, использующее ssh-туннель. Зелёные галочки означают, что соединения доступны.


Важно! Версии серверной и клиентской части программ должны быть той же линейки. Например, у меня на сервере версия программы - 1.3.3, на домашнем компьютере - 1.3.5. Это нормально. Если на сервере поднята версия 1.2.Х, а на ПК 1.3.Х (или наоборот), то даже если конструкция заработает (что мало вероятно), проблемы неизбежны.

Установка

Чтобы получить последнюю версию добавляем PPA репозиторий:

Sudo apt-get update
sudo apt-get install python-software-properties sudo add-apt-repository ppa:deluge-team/ppa

Обновляем список пакетов:

Sudo apt-get update

Устанавливаем клиента, консоль и демона:

Sudo apt-get install deluge-common deluge-console deluged

Если хотим веб-интерфейс ставим и его:

Sudo apt-get install deluge-webui

Все! Запускаем демона:


Настройка

Что бы включить удаленный доступ запускаем консоль:

Deluge-console

И выполняем комманды:

Config -s allow_remote True
config allow_remote

Выходим из консоли:

Добавляем пользователя для удаленного доступа (эти данные никак не связаны с вашим linux пользователем) и указываем права доступа:

Echo "username:password:level" >> ~/.config/deluge/auth

Подробнее по правам доступа .

И перезапускаем демона:

Pkill deluged
deluged

Если хотим чтобы deluge запускался вмести с системой необходимо создать скрипты которые будут это делать.

Создаем конфиг:

Sudo vim /etc/default/deluge-daemon

Вставляем туда этот код, обязательно в DELUGED_USER должен быть указан пользователь от имени которого будет работать демон:

# Configuration for /etc/init.d/deluge-daemon

# The init.d script will only run if this variable non-empty.
DELUGED_USER=""

# Should we run at startup?
RUN_AT_STARTUP="YES"

Создаем скрипт запуска:

Sudo vim /etc/init.d/deluge-daemon

И пишем в него:

#!/bin/sh
### BEGIN INIT INFO
# Provides: deluge-daemon
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Daemonized version of deluge and webui.
# Description: Starts the deluge daemon with the user specified in
# /etc/default/deluge-daemon.
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="Deluge Daemon"
NAME1="deluged"
NAME2="deluge"
DAEMON1=/usr/bin/deluged
DAEMON1_ARGS="-d" # Consult `man deluged` for more options
DAEMON2=/usr/bin/deluge-web
DAEMON2_ARGS="" # Consult `man deluge-web` for more options
PIDFILE1=/var/run/$NAME1.pid
PIDFILE2=/var/run/$NAME2.pid
UMASK=022 # Change this to 0 if running deluged as its own user
PKGNAME=deluge-daemon
SCRIPTNAME=/etc/init.d/$PKGNAME

# Exit if the package is not installed
[ -x "$DAEMON1" -a -x "$DAEMON2" ] || exit 0

# Read configuration variable file if it is present
[ -r /etc/default/$PKGNAME ] && . /etc/default/$PKGNAME

# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions

if [ -z "$RUN_AT_STARTUP" -o "$RUN_AT_STARTUP" != "YES" ]
then
log_warning_msg "Not starting $PKGNAME, edit /etc/default/$PKGNAME to start it."
exit 0
fi

if [ -z "$DELUGED_USER" ]
then
log_warning_msg "Not starting $PKGNAME, DELUGED_USER not set in /etc/default/$PKGNAME."
exit 0
fi

#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --background --quiet --pidfile $PIDFILE1 --exec $DAEMON1 \
--chuid $DELUGED_USER --user $DELUGED_USER --umask $UMASK --test > /dev/null
RETVAL1="$?"
start-stop-daemon --start --background --quiet --pidfile $PIDFILE2 --exec $DAEMON2 \
--chuid $DELUGED_USER --user $DELUGED_USER --umask $UMASK --test > /dev/null
RETVAL2="$?"
[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 1

Start-stop-daemon --start --background --quiet --pidfile $PIDFILE1 --make-pidfile --exec $DAEMON1 \
--chuid $DELUGED_USER --user $DELUGED_USER --umask $UMASK -- $DAEMON1_ARGS
RETVAL1="$?"
sleep 2
start-stop-daemon --start --background --quiet --pidfile $PIDFILE2 --make-pidfile --exec $DAEMON2 \
--chuid $DELUGED_USER --user $DELUGED_USER --umask $UMASK -- $DAEMON2_ARGS
RETVAL2="$?"
[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 2
}

#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred

Start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --user $DELUGED_USER --pidfile $PIDFILE2
RETVAL2="$?"
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --user $DELUGED_USER --pidfile $PIDFILE1
RETVAL1="$?"
[ "$RETVAL1" = "2" -o "$RETVAL2" = "2" ] && return 2

Rm -f $PIDFILE1 $PIDFILE2

[ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] && return 0 || return 1
}

case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME1"
do_start
case "$?" in

esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME1"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME1"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac

Устанавливаем права на выполнение для root:

Sudo chmod 755 /etc/init.d/deluge-daemon

Добавляем скрипт в автозагрузку и выгрузку:

Sudo update-rc.d deluge-daemon defaults

Ну и проверяем сделанную работу.

Собственно, а почему файловый сервер у нас простаивает?Да и откуда на нем должно браться файло?Непорядок.Поставим ка мы на него torrent клиент.Привык в винде к uTorrent. В kubuntu в свое время юзал kTorrent.Но в данном случае нас интересуют клиенты, которые могут работать без ГУИ и у которых есть веб интерфейс.Варианты:

  1. Связка rTorrent + wTorrent. Описаний настройки в сети довольно много, но процесс меня пугает =)
  2. TorrentFlux и по ходу его форк Torrentflux-b4rt. Созданны как веб интерфейс и ничего больше. Можно подумать над настройкой.
  3. Deluge. Изначально планировался как torrent клиент под gtk. Но начиная с какой-то версии он умеет работать как демон, к которому уже можно подключать нужный интерфейс - либо графическую морду, либо веб-морду, либо управлять через консоль.

Пока думаю попробовать заморочиться с третьим вариантом.Опачки - оказывается к нему можно подцеплять виндовую морду! Буду гуглить дальше.Просто довольно удобно было бы как обычно - сидишь в браузере, щелкнул на закачку torrent файла и открываешь его с помощью виндовой морды. А та уже передает закачку демону на сервер.Ставим deluge (вообще советуют ставить версию с оф.сайта, но я поставил из репозиториев)sudo aptitude install deluge-coresudo aptitude install deluge-webuisudo aptitude install deluge-console Если ставим скачанные с сайта пакеты, то скорее всего возникнет проблема неудовлетворенных зависимостей.Выходим из положения следующим образом:sudo apt-get -f install Запускаемdeluged Запускаем web мордуdeluge --ui web Кстати, выполняем эту команду от имени своего пользователя, не от рута. Ибо в таком случае веб-интерфейс не будет работать. Почему, не разбирался пока.Но после запуска этого одна консоль у нас пропадет, ибо там выполняется эта команда.Для того, чтобы команда выполнилась и осталась висеть в фоне, пишемdeluge --ui web& Если надо, чтобы веб-интерфейс был доступен всегда, запихайте эту команду куда-нибудь в автозапуск, но так, чтобы она выполнялась с правами обычного пользователя.Кстати, рекомендую в автозапуск же запихать запуск демона deluged.Web интерфейс работает по порту 8112.Заходим через браузер на нужный сервер по этому порту.Пароль по умолчанию - deluge.Настраиваем.Предложено несколько вариантов оформления. Ajax вариант самый красивый. Но в нем нет всех возможностей. К примеру, нельзя указать для конкретного торрента, куда ему скачивать файл. Можно только указать общую папку для всех торрентов. В остальных шкурках эта возможность присутствует.Идем далее.Существует возможность использовать ГУИ-оболочку к deluge, запускаемую на любом отличном от сервера (да и на сервере, если там установлено графическое окружение) компе. ГУИ-оболочки есть и под Linux и под Windows.Но перед использованием ГУИ-морды надо разрешить это демону.Делаем это любым из двух способов:

  1. Через веб-интерфейс. в настройках - Deluge - Сервис - Разрешить удалённое соединение (ставим галочку)
  2. Через консольный интерфейс. Пишем deluge --ui console . Затем config allow_remote True .

Веб-интерфейсом часто пользоваться неудобно. Но это сугубое ИМХО.Так как на десктопе у меня винда (Windows Web Server 2008), поставим клиент под винду.Идем на официальный сайт проекта, качаем версию для винды. Рекомендуется качать туже версию, что и у демона, установленного на сервере.Скачали, ставим. Программа установки также предложит поставить GTK+ Runtime. Соглашаемся.После того, как клиент был установлен, лезем в его настройки:

  1. Запускаем клиент
  2. Зайти "Preferences -> Interface" и снять галку с "Classic Mode".
  3. Рестартовать клиент. Должно появиться окно Connection manager"а
  4. Удалить строчку с localhost. Нажав кнопку "Add", ввести IP сервера (в нашем случае коробки). Порт оставить тот же.

Тут я на некоторое время завис.Помимо IP адреса надо было ввести имя пользователя и пароль.Пароль, предположим, я мог через веб-интерфейс установить.А какого пользователя писать? Писал своего и пароль, установленный через веб-интерфейс.Нифига.Писал своего и его пароль в системе. Нифига..Покопался.Значит, делаем так:

  1. Идем на сервере в домашний каталог нашего пользователя (от которого мы запускаем deluge)
  2. Далее идем в каталог /.config/deluge
  3. Открываем файл auth
  4. Во второй строчке пишем имя пользователя и пароль в формате user:password (причем замечу, что эту информацию мы пишем от балды)
  5. Рестартим deluge - deluged restart
  6. На компе с виндой идем Менеджер Соединений, в настройках соединения забиваем этого пользователя и его пароль.
  7. Жмякаем "Коннект"
  8. Вуаля, клиент подключился.

Таким образом, мы получили привычный способ обработки торрент-файлов - открываем их торрент-клентом (ГУИ-мордой) и выбираем, что нам делать.Но можно и по другому.Я пробовал и такой метод:

  1. Создаем папочку на сервере, скажем /home/user/torrents
  2. Расшариваем ее в самбе.
  3. В настройках deluge через туже веб-морду ставим, чтобы он автоматом брал торренты из этой папочки.
  4. А далее, мы просто сохраняем торрент-файлы в эту папочку.

Я повысился до 12.04, и Потоп сломался. Я хочу удалить его, а затем добавить его снова. Как удалить Deluge?

  1. Пробовал: Поиск в программном центре Ubuntu
    Ошибка: кнопка читает «Установить» (но она уже установлена!)
  2. Пробовал: sudo apt-get remove --purge deluge
    Failed: Output read Removing deluge... но я все еще могу найти его, когда я ищу свою тире

Если sudo apt-get remove --purge deluge удалось, то пакет deluge был успешно удален.

Если пункты меню все еще отображаются в тире, это не обязательно означает, что программа все еще установлена, только ссылки на нее остаются где-то. Возможно, тире хранит свой собственный кеш того, что находится в вашем меню, и требуется некоторое время, чтобы понять, что было сделано изменение.

Не стесняйтесь идти вперед и переустанавливайте потоп, чтобы увидеть, работает ли он.

Для дальнейшего использования вы должны искать dotfiles в ~/ или в ~/config которые относятся к Deluge. Это наиболее вероятное место для хранения данных для вашей учетной записи. Попробуйте очистить или переименовать это. Это может решить вашу оригинальную проблему (вместо того, чтобы повторно установить его).

Вы попробовали полное удаление с помощью диспетчера синаптических пакетов?

Установить синаптический синаптический sudo apt-get install synaptic

У меня была та же проблема, что и удаление потопа. Я понял, что у меня установлена ​​версия GTK, поэтому просто удалить deluge не удалось. Я использовал sudo apt-get remove --purge deluge-gtk

В соответствии с ОП с использованием sudo apt-get remove --purge deluge является правильным способом

Если вы установили из исходных файлов или вам нужно найти оставшиеся файлы Deluge, в руководстве по виджетам Deluge есть сведения: RemovingFromSystem

Наиболее вероятная причина, по которой она все еще появляется в Dash, связана с остаточным файлом deluge.desktop .

Вы можете использовать locate deluge который быстро отобразит каждый файл / папку с именем потоп, и вы сможете определить, действительно ли приложение было удалено.

Если вы установили Deluge из исходного кода, вам придется вручную удалить файлы. Основная папка приложения потопа обычно устанавливается в папке сайта python или в папке dist-packages, которая должна быть видна на выходе из указанной выше команды. Вам также необходимо удалить двоичные файлы потопа из / usr / local / bin / или / usr / bin / .

Как упоминает neon_overload, если у вас возникли проблемы с Deluge, резервное копирование и удаление старой конфигурации может помочь исправить проблемы с обновлением. Расположение по умолчанию: ~/.config/deluge

Sudo apt-get remove --purge deluge

Очевидно, вы понимаете, что при поиске «Потопа» вы все равно получите его на экране.

Это оставшиеся файлы потопа – чтобы полностью удалить их из вашей системы,

Sudo apt autoremove deluge

Поиск и отсутствие потопа появятся ….. Магия