Calculate Forum

Tracker на Bittorrent

#1

Появилась необходимость поднять Tracker. Выбор пал на net-p2p/bittorrent, с запуском которого возникло несколько проблем, которые опишу ниже.
Ставим пакет bittorrent (версия: 5.2.2):

emerge net-p2p/bittorrent

Вносим изменения файл конфигурации /etc/conf.d/bittorrent-tracker .
Меняем значение PORT с 8082 на 6969 или 80. Без этого изменения у меня не работала регистрация торрентов трэкере.
Стандартным скриптом в /etc/init.d/bittorrent-tracker стартовать трэкер не удалось т.к. отрабатывало исключение при использовании параметра -logfile = <путь к файлу лога>, который используется в скрипте запуска демона. Проблему удалось решить путем исправлений в коде bittorrent.
После успешного запуска трэкера появилась еще одна проблема. При обработке запроса клиента трекером появлялась ошибка. В результате чего клиенты видели только свою раздачу. Исправить данную проблему также удалось путем исправления в коде bittorrent.
Патч , исправляющий вышеописанные проблемы перенесен в оверлей (/var/lib/layman/calculate/profiles/patches/net-p2p/bittorrent-5.2.2-unicode.patch)

Стартуем трэкер:

/etc/init.d/bittorrent-tracker start

Трэкер готов к работе.

torrent - файлы создавал с помощью maketorrent-console:

maketorrent-console http://<хост трэкера>:<порт трэкера>/announce <путь к файлу для раздачи>

Для организации раздачи с сервера трэкера использовал консольный торрент-клиент net-p2p/btpd. Выбрал его т.к. он работает режиме демона и прост в использовании.

emerge net-p2p/btpd

Правим конфиг /etc/conf.d/btpd. В конфиге нужно раскомментировать BTPDUSER и вписать пользователя от имени которого запускается демон и BTPDEXTRARGS с указанием порта на котором поднимется клиент.
Стартуем демона

/etc/init.d/btpd

Основная команда для управления очередью - это btcli.

Добавить торрент-файл в очередь:

btcli add -d <путь к директории закачки/раздачи> <путь к торрент-файлу>

Удалить торрент-файл из очереди:

btcli del <номер торрента в очереди|путь к торрент-файлу>

Посмотреть очередь:

btcli list

Посмотреть статистику:

btcli stat

Активировать очередь/торрент:

btcli start [номер торрента в очереди]

Деактивировать очередь/торрент:

btcli start [номер торрента в очереди]

Остановить btpd:

btcli kill

Mastodon Mastodon