Инструменты пользователя

Инструменты сайта


linux:retraker_xbtt

Ретрекер на основе XBTT

Ретрекер (retracker, также встречается термин псевдотрекер) — технология оптимизации обмена битторрент (bittorrent) трафиком внутри локальных сетей. Подробней на Wikipedia.ru

Установка ретрекера XBTT

Устанавливаем ретрекер XBTT на Debian 9 Stretch x64. Предполагается что у нас уже есть вебсервер

На текущий момент SVN не работает, но есть GIT https://github.com/poiuty/xbt

Устанавливаем необходимые пакеты для сборки XBTT:

apt install git g++ make libboost-dev libmysqlclient15-dev

Создаем каталог для трекера XBTT:

cd /etc/

Получаем по GIT последнюю версию трекера XBTT:

git clone https://github.com/poiuty/xbt.git

Собираем трекер XBTT:

cd xbt/Tracker
chmod +x make.sh
./make.sh

Далее необходимо создать пользователя и таблицы трекера XBTT в MySQL или через консоль или в PHPMyAdmin. Входим в MySQL:

mysql -u root -p%ПАРОЛЬ_К_SQL_БЕЗ_ПРОБЕЛА%

Создаем пользователя для трекера XBTT:

CREATE USER 'tracker'@'localhost' IDENTIFIED BY '%ПАРОЛЬ_ДЛЯ_ПОЛЬЗОВАТЕЛЯ%';

Создаем базу данных:

CREATE DATABASE IF NOT EXISTS `tracker`;

Даем полные права на базу данных:

GRANT ALL PRIVILEGES ON `tracker`.* TO 'tracker'@'localhost';

Выходим из MySQL:

exit;

Импортируем базу данных трекера XBTT используя пароль от пользователя tracker

mysql -u tracker -p%ПАРОЛЬ_К_SQLtracker_БЕЗ_ПРОБЕЛА% tracker < xbt_tracker.sql

Дальше нам нужно отредактировать конфигурационный файл с созданием резервной копии:

cp xbt_tracker.conf.default xbt_tracker.conf
nano xbt_tracker.conf

В конфигурационный файл добавляем данные со страницы проекта http://xbtt.sourceforge.net/tracker/ и поправляем:

  • логин, пароль и имя базы данных для трекера
  • Исправляем строку с pid_file

конфигурационный в итоге получился такой:

mysql_host = localhost
mysql_user = tracker
mysql_password = %ПАРОЛЬ_ДЛЯ_ПОЛЬЗОВАТЕЛЯ%
mysql_database = tracker
announce_interval 1800
anonymous_connect 1
anonymous_announce 1
anonymous_scrape 1
auto_register 1
clean_up_interva 60
daemon 1
debug 0
full_scrape 0
gzip_debug 1
gzip_scrape 1
listen_ipa *
listen_port 2710
log_access 0
log_announce 0
log_scrape 0
offline_message
pid_file = /var/run/xbt_tracker.pid
read_config_interval 60
read_db_interval 60
redirect_url
scrape_interval 0
table_announce_log xbt_announce_log
table_files xbt_files
table_files_users xbt_files_users
table_scrape_log xbt_scrape_log
table_users xbt_users
write_db_interval 15

Дальше создаем старт/стоп скрипт. Закачиваем скрипт:

wget -P /etc/init.d/ http://data.adminsklad.ru/xbtt/xbt

Даем права на запуск:

chmod +x /etc/init.d/xbt

Добавляем в запуск:

update-rc.d xbt defaults 99

Запускаем!

/etc/init.d/xbt start

Проверяем работу по адресу:

http://%ВАШ_HOSTNAME%:2710/st

Не забываем открыть TCP и UDP порты 2710 в фаерволе.

Вероятные проблемы

Веселости, баги, глюки или еще как назвать… замеченные в процессе установки и эксплуатации.

  • Непонятная работа конфигурационного файла и конфигурации из MySQL:

В процессе выяснилось, что мои торренты показывают unregister torrent., решение нашлось на Блоге Незабудычь, нужно добавить параметр auto_register = 1 конфигурации в таблицу xbt_config MySQL

INSERT INTO `tracker`.`xbt_config` (`name` ,`value`)VALUES ('auto_register', '1');

Таким же образом начинает работать режим debug доступный по адресу xbtt:2710/debug, добавляем в xbt_config параметр debug = 1

INSERT INTO `tracker`.`xbt_config` (`name` ,`value`)VALUES ('debug', '1');

Где то написано было, что можно все параметры перенести в MySQl, но у меня при старте говорит что такие то параметры не распознаны, то есть это не выход. Баги… :-(

  • непонятно почему в процессе импорта в DB часть таблиц не импортируется, а часть импортированных просто не работают.
  • Автозапуск не у всех работает, скрипт можно добавить в /etc/rc.local

Страница статистики

В каталоге xbt/Tracker/htdocs лежат интересные php файлы со статистикой ретрекера, т.е. положить как web страницу. Работало под PHP5. Исправил файлы для работы с PHP7 и PDO.

Файл xbt_common.php можно удалить, исправлены файлы xbt_config.php и xbt_files.php.

Забрать http://data.adminsklad.ru/xbtt/xbt_htdocs_php7.zip

linux/retraker_xbtt.txt · Последнее изменение: 2018/05/15 00:05 — adminroot