Deluge удаленное управление. Установка Deluge BitTorrent в Ubuntu Server. Deluge добавление расширения для незавершенных файлов
Установка
Чтобы получить последнюю версию добавляем 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
Ну и проверяем сделанную работу.
На сервере 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 - Администратор.
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.Х (или наоборот), то даже если конструкция заработает (что мало вероятно), проблемы неизбежны.
Все последующие шаги описываются на примере Fedora, но могут быть адаптированы под любой другой дистрибутив.
Установка
Установка — это самое простое, что может быть.
$ sudo dnf install deluge-daemon deluge-console
Ставим консольный клиент, а так же cli для него.
Пока все. Клиент готов к работе. Его уже можно включить и пользоваться.
$ sudo systemctl enable deluge-daemon $ sudo systemctl start deluge-daemon
Но в такой конфигурации есть много проблем:
- отсутствие логов
- неправильное распределение по портам сервера
Вам это надо? 🙂
Логи
Сразу после установки демон готов к запуску. Но та конфигурация, которую предлагают поставщики дистрибутива — она не совсем удачна. В ней отсутсвует логирование происходящего.
Для этого нам надо поставить logrotate.
$ sudo dnf install logrotate
Сконфигурировать его для поддержки новых правил ротации. Для этого создадим файл /etc/logrotate.d/deluge примерно следующего содержания
/var/log/deluge/*.log { rotate 4 weekly missingok notifempty compress delaycompress sharedscripts postrotate initctl restart deluged >/dev/null 2>&1 || true initctl restart deluge-web >/dev/null 2>&1 || true endscript }
А так же папку для хранения логов. И дадим ей нужные права.
$ sudo mkdir /var/log/deluge/ $ sudo chown deluge:deluge /var/log/deluge
Теперь осталось включить поддержку логов для демона.
Создаем новое описание демона для systemd в /etc/systemd/system/deluged.service
Description=Deluge Bittorrent Client Daemon After=network.target Type=simple User=deluge Group=deluge UMask=007 ExecStart=/usr/bin/deluged -d -l /var/log/deluge/daemon.log -L warning Restart=always TimeoutStopSec=300 WantedBy=multi-user.target
Отлично. Осталось настроить iptables и сам deluge.
Настройка iptables
В ряде случаем достаточно просто открыть нужные порты
$ sudo iptables -A INPUT -p tcp --dport 56881:56889 -j ACCEPT $ sudo iptables -A INPUT -p udp --dport 56881:56889 -j ACCEPT
Но в некоторых конфигурациях могут наблюдаться проблемы с механизмом conntrack, который помечает ряд пакетов как invalid (особенно это касается dht трафика).
Поэтому стоит отключить conntrack для всех соединения deluge.
$ sudo iptables -t raw -I PREROUTING -p udp --dport 56881:57200 -j NOTRACK $ sudo iptables -t raw -I OUTPUT -p udp --sport 56881:57200 -j NOTRACK $ sudo iptables -t raw -I PREROUTING -p tcp --dport 56881:57200 -j NOTRACK $ sudo iptables -t raw -I OUTPUT -p tcp --sport 56881:57200 -j NOTRACK $ sudo iptables -I INPUT -p icmp --icmp-type 3 -j ACCEPT $ sudo iptables -I INPUT -p icmp --icmp-type 4 -j ACCEPT $ sudo iptables -I INPUT -p icmp --icmp-type 11 -j ACCEPT $ sudo iptables -I INPUT -p icmp --icmp-type 12 -j ACCEPT
$ sudo /usr/libexec/iptables/iptables.init save
Локальная авторизация
Чтобы мы могли успешно пользоваться deluge-console локальная авторизация должна быть включена для нашего пользователя.
Т.е. должен быть файл ~/.config/deluge/auth содержащий строку логина-пароля
Localclient:тут_длинный_хеш:10
Скопировать этот файл можно из каталога /var/lib/deluge/.config/deluge
$ sudo cat /var/lib/deluge/.config/deluge/auth >> ~/.config/deluge/auth
Запуск и гонфигурирование демона
$ sudo systemctl enable deluged $ sudo systemctl start delugedТем самым мы запустили демона, конфиг которого был описан ранее.
Собственно, а почему файловый сервер у нас простаивает?Да и откуда на нем должно браться файло?Непорядок.Поставим ка мы на него torrent клиент.Привык в винде к uTorrent. В kubuntu в свое время юзал kTorrent.Но в данном случае нас интересуют клиенты, которые могут работать без ГУИ и у которых есть веб интерфейс.Варианты:
- Связка rTorrent + wTorrent. Описаний настройки в сети довольно много, но процесс меня пугает =)
- TorrentFlux и по ходу его форк Torrentflux-b4rt. Созданны как веб интерфейс и ничего больше. Можно подумать над настройкой.
- 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.Но перед использованием ГУИ-морды надо разрешить это демону.Делаем это любым из двух способов:
- Через веб-интерфейс. в настройках - Deluge - Сервис - Разрешить удалённое соединение (ставим галочку)
- Через консольный интерфейс. Пишем deluge --ui console . Затем config allow_remote True .
Веб-интерфейсом часто пользоваться неудобно. Но это сугубое ИМХО.Так как на десктопе у меня винда (Windows Web Server 2008), поставим клиент под винду.Идем на официальный сайт проекта, качаем версию для винды. Рекомендуется качать туже версию, что и у демона, установленного на сервере.Скачали, ставим. Программа установки также предложит поставить GTK+ Runtime. Соглашаемся.После того, как клиент был установлен, лезем в его настройки:
- Запускаем клиент
- Зайти "Preferences -> Interface" и снять галку с "Classic Mode".
- Рестартовать клиент. Должно появиться окно Connection manager"а
- Удалить строчку с localhost. Нажав кнопку "Add", ввести IP сервера (в нашем случае коробки). Порт оставить тот же.
Тут я на некоторое время завис.Помимо IP адреса надо было ввести имя пользователя и пароль.Пароль, предположим, я мог через веб-интерфейс установить.А какого пользователя писать? Писал своего и пароль, установленный через веб-интерфейс.Нифига.Писал своего и его пароль в системе. Нифига..Покопался.Значит, делаем так:
- Идем на сервере в домашний каталог нашего пользователя (от которого мы запускаем deluge)
- Далее идем в каталог /.config/deluge
- Открываем файл auth
- Во второй строчке пишем имя пользователя и пароль в формате user:password (причем замечу, что эту информацию мы пишем от балды)
- Рестартим deluge - deluged restart
- На компе с виндой идем Менеджер Соединений, в настройках соединения забиваем этого пользователя и его пароль.
- Жмякаем "Коннект"
- Вуаля, клиент подключился.
Таким образом, мы получили привычный способ обработки торрент-файлов - открываем их торрент-клентом (ГУИ-мордой) и выбираем, что нам делать.Но можно и по другому.Я пробовал и такой метод:
- Создаем папочку на сервере, скажем /home/user/torrents
- Расшариваем ее в самбе.
- В настройках deluge через туже веб-морду ставим, чтобы он автоматом брал торренты из этой папочки.
- А далее, мы просто сохраняем торрент-файлы в эту папочку.
Расскажите мне, как сделать, чтобы apf-firewall был закрыт для большинства портов, но работала samba в локалке, и торрент-клиент, например Deluge.
Дистрибутив: Debian Jessie
Ядро: 3.14-2-amd64
Режим, в котором фаервол через 5 минут отключается, выключен.
Настраивал, как написано тут: https://www.debian.org/releases/slink/i386/ch-init-config.ru.html
Vuurmuur не предлагать - это кривая каличная утилита, да ещё и бородатая.
Ну, как вариант, можете аргументировать, почему на домашнем ПК firewall не нужен.
Deluge отлючает интернет (WiFi)
Привет всем. Пытаюсь чтонить скачать через Deluge - торрент трекер в xubuntu 14.04.1, и у меня выключается секунд через 15 интернет-соединение, точнее просто тупо интернет-недоступен, deluge тоже перестает качать. Приходится перезагружать WiFi и потом опять ждать 10-15 секунд. Что-то кароче не доброе. Может кто знает, как все-таки решить проблемку.
deluge и рутрекер
автостарт службы в opensuse 13.1
Ничего не понимаю. Установил Deluge, скачал скрипт, закинул в init.d, создал симлинк в rc5.d в YAST - управление службами(service manager) служба появилась ставлю ей Enabled, сохраняю захожу снова, а оно снова Disabled. Что за? Запускается нормально без глюков, а с системой стартовать не хочет.
UPnP в Transmission работает, в Deluge и qBittorrent - не работает.
На роутере (федоро19-роутер) для UPnP стоит linux-igd, дефолт.
На клиенте запускаю Transmission, на роутере в iptables -L видны проброшенные порты, логи linux-igd красноречивы. Гуд.
На клиенте запускаю qBittorrent или Deluge (upnp включил, конечно) - порты не пробрасываются, входящих соединений нет, iptables на роутере молчит, логи linux-igd молчат. Бэд.
До этого замечал, что с роутерами-коробочками (типа asus, tp-link) - transmission наоборот не работает с UPnP, а qBittorrent работает.
Что крутить? Или скажите хотябы: «УМВР, linux-igd и qBittorrent (или Deluge).»
Deleted (28.02.14 13:25:31)
Торрент клиент для высокой нагрузки
Хочу поинтересоваться у хардкорщиков с 1000+ активных раздач, какой клиент нынче оптимален для такого сценария. Рассматриваю только серверные и демонические клиенты с адекватными системными требованиями.
Особо интересует потребление памяти и процессора, устойчивость к нетривиальным торрентам (длинные имена файлов), устойчивость к ошибкам и их последствиям при скачивании, группировка раздач вместо цельного списка.
Пока под наблюдением Transmission, Deluge, qBittorent. Но косяки есть у всех. qBittorent не имеет нормальной морды для клиент-серверного взаимодействия (может уже допилили, не нашел), не понимает длинных имен (больше чем позволяет ФС).. Deluge (особенно гуй) начинает тупить именно на 100+ торрентах, частые косяки с перехешированием (раньше точно были). Transmission лепит все раздачи в линейный список без всякой группировки, что в указанных масштабах будет «внушать», не понимает длинных имен.
Deluge тупит с колонками
Колонки загружено, отдано и некоторые другие не отображаются как их не отмечай. Те, которые стоят по умолчанию (например #,имя,размер,состояние) спокойно включаются и выключаются. Что делать? Может это в конфигах пофиксить можно? Вот только я не знаю в каком файле искать.
Если вдруг это извечный баг deluge, который не фиксится, то подскажите альтернативы. Я частично знаком с ними. Из тех, что знаю и визуально понравился - kTorrent например. Но у меня третьегном, а держать тяжелые либы кед говорят плохо.
Deluge как сделать так чтоб автоматически запускался от пользователя torrent в arch-линуксе
Автозапуск демона Deluged от имени пользователя «deluge»
Имеется сервер с debian 7.2. Система инициализации systemd.
Требуется: запускающийся, при запуске системы, deluged от пользователя «deluge», доступ к демону через windows GUI по стандартному порту 58846.
Доступ к папке с торрентами разрешен пользователю deluge, cмонтирована с помощью самбаклиента в /mnt.
Установил deluged, deluge-console. Разрешил удаленный доступ. Создал deluged.service, поместил в него скрипт с официального вики :
Description=Deluge Bittorrent Client Daemon After=network.target User=deluge Type=simple ExecStart=/usr/bin/deluged -d WantedBy=multi-user.target
adduser --disabled-password --system --home /home/deluge --group deluge
echo "deluge:pass:10" >> ~/.config/deluge/auth
Врубаю deluged.service:
systemctl daemon-reload systemctl enable deluged.service systemctl start deluged.service
Демон запускается, работает, порт занимает. Но пускать через виндовый GUI не хочет. Меняю в deluged.service пользователя на root - пускает.
Что я делаю не так? Права какие-нибудь нужны пользователю deluge?
демон deluged не выгружается
В deluge указываю выйти&остановить демон или сначала останавливаю из меню. Жду какое то время. И всё равно он активный в топе. На обычный kill не реагирует, только со страпоном. Ваши идеи? Package: deluge
Deluge и мистика
Вот только что сейчас случилось нечто странное. Слушаю я интернет-радио. И вдруг оно начинает лагать. Смотрю на график скорости. Вижу, что что-то выжрало почти всю полосу. Начинаю смотреть порты, выключать разные демоны. Смотрю скорость, которую отжирает deluge через deluge-console. Рапортаруемая скорость и близко не стоит с отжираемой. Iftop говорит, что соединений много и не с портом демона deluge. Отключаю все же deluge. Скорость резко упала. Ради эксперимента включил и выключил демон пару раз. Трафик явно корелировал с включением/выключением демона. Что это было?!
Как в Deluge удалять.torrent после добавления?
Ищу новую торрентокачалку
Обязанности:
- работать круглосуточно демоном;
- иметь визуальный интерфейс для добавления/удаления торрентов, который бы коннектился к демону;
- возможность настройки приёма соединений от клиентов через юникс-сокет и/или конкретный диапазон сетевых интерфейсов или IP адресов этих интерфейсов;
- многопользовательская аутентификация, желательно с ограничением доступа;
- не иметь проблем с гуёвым интерфейсом;
- клиенты должны уметь получать и показывать инфу в классическом полном табличном виде;
- клиент-сервер не должен быть реализован на протоколе http(s);
- быть нативной под линукс.
Краткая история, чем я пользовался до этого:
Давным-давно пользовался vuze aka azureus - не понравился интерфейс.
Потом был deluge, которым я пользовался успешно до тех пор, пока после очередной пересборки мира вылезли пихтонопроблемы. Интерфейс делюжа близок к идеалу, имейте это в виду.
Тогда я решил попробовать rtorrent, который освоил, хоть и замучился перетаскивать все открытые закачки с делюжа на него. rtorrent классный, но с ним могу работать только я, а есть ещё остальная семья.
Поэтому после rtorrent я снова попробовал делюж, но там опять были пихтонопроблемы. Тогда я создал тред, аналогичный этому и пересел на transmission-daemon и transmission-remote-gtk. Последний достал тем, что в меню добавления торрента он не позволяет нормально выбрать папку, заставляя вдабливать каждый путь руками. Последние версии переползли на gtk+3 чем окончательно
подтвердили моё желание с него слезть. Нет, я не против gtk3 как такового, просто я считаю, что gtk - это сраный глюкодром, да и для третьей версии у меня даже темы не поставлено.
Сегодня поставил делюж. В этот раз и сервер и клиент заработали, был приятно удивлён упрощением организации аутентификации (раньше надо было пароли через консоль генерить, сейчас плейнтекст в файле), но разочаровало отсутствие вменяемой настройки интерфейса, на котором делюж слушает соединения. Делюж умеет в две крайности - либо он слушает локалхост, либо на 0.0.0.0. Однако ж меня ждал её один сюрприз - когда я попытался добавить файл, я обнаружил, что диалог выбора файла практически никогда не работает правильно, за исключением того случая, когда путь находится в позиции последнего выбранного. // Уж не по этой ли причине аналогичный элемент у трансмишена выполнен в виде убогой вбивалки?
Deleted (23.01.13 20:31:28)
Сортировать на добавлению.
Deluge не переносит файлы завершённых закачек
Используется Deluge 1.3.5 из репозитария. Дистрибутив - archlinux x86_64. Задаю в настройках каталог для скачивания и каталог для завершённых раздач. Не работает. Подключал также плагин AutoAdd, в котором тоже есть подобная настройка - не переносит и всё тут. Торренты начинают качаться, как только.torrent-файл появляется в нужном каталоге.
Пробовал использовать как демона, так и «классический интерфейс» - разницы никакой. Пробовал даже удалить deluge, все его настройки, и поставить заново - не работает, из AUR"а тоже собирал, безрезультатно. Права на каталог для завершённых закачек уже 777 поставил, не помогает, проблема не в этом. Когда-то очень давно всё работало, а потом как-то, я даже не заметил. когда, перестало.
Кто-нибудь встречался с подобной проблемой? И как её побороть? Использовать transmission не предлагать.
Deluge в связке ПК-Ubuntu + Server-NAS4Free (FreeBSD)
постараюсь выразиться правильно и доходчиво. Ввиду того, что Transmission Remote GUI каряво работает на Ubuntu 12.10 (лично у меня) решил сотворить подобие этого другим софтом. Выбор пал на Deluge . Нашел инструкцию http://dev.deluge-torrent.org/wiki/UserGuide/ThinClient Сделал Installing Deluge On FreeBSD
В пункте Private IP : вписал IP локальный сервера (NAS) допустим для примера он 192.168.68.68
ifconfig | grep -e "inet addr" | grep -v "192.168.68.68" | cut -f2 -d":" | cut -f1 -d" "
Deluge добавление расширения для незавершенных файлов
приоритеты файлов в торенте, закачка
Имеется торент файл, в нем имеется структура каталогов, файлы именуются по их хешу. На компьютере у меня уже имеются некоторые файлы. Надо расставить приоритет «0» на файлы в торенте, которые присутствуют. Язык python, библиотека для торента - libtorrent от rasterbar. Покопался в исходниках deluge(он написан на python и использует эту же библиотеку). буду получать торент файл или magnet-ссылку, но это не суть.
Почему переход именно на KTorrent?
KTorrent лишён вышеприведённых недостатков Deluge, при этом по функционалу и отзывчивости не уступает. Памяти потребляет примерно столько же, несмотря на kde"шные библиотеки. Что же касается других торрент-клиентов, то они не дотягивают до функционала Deluge и KTorrent. Лишь qBittorrent мог стать альтернативой, но он забанен на pornolab"е и всё-таки создаёт пустые каталоги (с «пустыми» файлами проблема решена).
Итак, изучая регулярные выражения и консольные юникс-утилиты, написал скрипт для переноса делюговских закачек и раздач.
Хотелось бы обратить внимание на тройку вещей:
- Статус неотмеченных для закачки файлов в мультифайловых раздачах не перенесётся (т.е. по умолчанию будут все отмечены).
- Когда запустите KTorrent, то все перенесённые раздачи/закачки будут остановлены и нужно будет их перехешировать, выделяя каждую раздачу и нажимая SHIFT+C (более быстрого способа не нашёл. В некоторых торрент-клиентах достаточно нажать «стартовать все», но KTorrent в этом случае будет перезакачивать, а не перехешировать).
- Работоспособность проверялась на Ubuntu 12.04, Deluge 1.3.5, KTorrent 4.1.3
#!/bin/bash #Deluge2KTorrent script #written by takiz aka dadd printf "%s\n" "...ждите..."; #отсеиваем пути к файлам из torrents.state и фиксим русскую кодировку egrep "^S.\/" ~/.config/deluge/state/torrents.state | sed -e "s/^..//;s/.$/\//;s/\//#/g" > paths; t=`cat paths`; printf "%b\n" $t > paths; #отсеиваем названия торрентов и удаляем дублирующиеся по одному из каждой пары egrep "{22,99}" ~/.config/deluge/state/torrents.state | sed -e "s/^..//;s/.$//" | perl -ne "print unless $U{$_};$U{$_}=1;" > torrents; #создаём временный файл скрипта для создания каталогов и запускаем printf "%b\n" "#!/bin/bash\nmkdir ~/.kde/share/apps/ktorrent/tor{1..100500}" > temp1.sh; chmod 774 temp1.sh; strok=`sed -n "$=" torrents`; sed -i -e "s/100500/"$strok"/" temp1.sh; ./temp1.sh; #создаём скрипт копирования и запускаем printf "%s\n" "#!/bin/bash" > temp2.sh; chmod 774 temp2.sh; cat torrents | awk "{print $0".torrent ~/.kde/share/apps/ktorrent/tor"NR"/torrent"}" | sed "s/^/cp ~\/\.config\/deluge\/state\//" >> temp2.sh; ./temp2.sh; sleep 10; #создаём шаблон stats printf "%b\n" "AUTOSTART=0\nOUTPUTDIR=" > stats; #создаём stats файлы с путями a=2; while read f2; do sed -e "1,/.*/{n;s/\(.*\)/\1$f2/}" stats >stats$a; a=$(($a + 1)); done < paths; sed -i -e "s/#/\//g" stats*; #добавляем в скрипт копирования пути stats и запускаем cat temp2.sh | awk "{sub(/\~\/[^ ]*\.torrent/, "stats"NR)}1" | sed "s/\/torrent/\/stats/;s/cp st/mv st/" > tmpfile; mv tmpfile temp2.sh; chmod 774 temp2.sh; ./temp2.sh; sleep 5; #удаляем временные файлы rm paths torrents stats temp1.sh temp2.sh; printf "%s\n" "ok";
Проверьте баг в Deluge
Скорее всего, касается только Fedora.
1. Качаем.torrent
2. Указываем любую папку для загрузки.
3. Ждем окончания скачивания.
4. Что бы ни указали в п.2, видим свои файлы в /home/username/
Запилю багрепорт, если проявляется еще хоть у кого-то, если нет - ищу проблему у себя.
P.S. проблема появилась, как мне кажется, после долгожданного обновления до 1.3.5.