Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Серверные службы Linux

TorrentFlux: BitTorrent-клиент на веб-сервере

Оригинал: TorrentFlux: A BitTorrent client on a server
Автор: Kurt Edelbrock
Дата: 20 марта 2008
Перевод: Александр Тарасов aka oioki
Дата перевода: 27 марта 2008

TorrentFlux - это BitTorrent-клиент, работающий на основе системы Apache+MySQL+PHP. Он расширяет функциональность традиционного BT-клиента, позволяя управлять закачками через веб-интерфейс (т.е. через обыкновенный браузер). В качестве фонового клиента используется BitTornado - он управляет очередями, закачками и раздачами torrent-файлов. Полезным применением TorrentFlux является его установка на домашний компьютер, с последующим удаленным управлением. Также можно установить его на каком-нибудь внешнем хосте, в целях увеличения скорости скачивания.

BitTorrent - это протокол децентрализованного обмена файлами. Пользователи скачивают файлы маленькими кусочками из множества источников, разбросанных по интернету. BitTorrent особенно популярен при скачивании дистрибутивов Linux в виде CD- и DVD-образов, размер их может колебаться от 700 Мб до 4 Гб. BitTorrent работает так, что пользователи, скачавшие какие-то кусочки файла, тут же приступают к их раздаче - количество источников увеличивается, и увеличивается скорость распространения файлов по интернету.

TorrentFlux - BitTorrent-клиент постоянного действия. Иными словами, если ваш Apache работает, то и TorrentFlux также будет работать. Таким образом, вы будете участвовать в обмене файлами, не открывая явным образом сам BitTorrent-клиент. Вы будете чаще находиться на раздаче, объем отданных файлов будет выше, и соответственно выше будет ваш рейтинг.

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

Добавлять torrent-файлы можно либо путем ввода URL-адреса, выбора torrent-файла на диске, либо с помощью встроенной функции поиска. Область поиска может быть расширена до других веб-сайтов и трекеров за счет модулей с сайта разработчика.

Пользователи могут добавлять RSS-ленты по определенным темам, ключевым словам или жанрам - что обеспечивает быстрый доступ к соответствующим файлам и закачкам. Интерфейс лент представляется в виде простого HTML, можно использовать один из нескольких предопределенных стилей, а также создать свой собственный.

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

Файлы можно легко скачать с веб-сервера через браузер, с помощью встроенного файлового менеджера. Можно перемещаться по файловой структуре и скачивать файлы либо напрямую, либо соответствующий архив .tar или .zip. Продвинутые пользователи могут получать данные по протоколам FTP или SCP, что особенно полезно для удаленного доступа.

Еще пользователи могут посылать личные сообщения, прямо через интерфейс TorrentFlux.

Процесс установки

Чтобы установить TorrentFlux, необходимо, чтобы были установлены и настроены Apache, MySQL и PHP. Если это не так, но у вас дистрибутив Ubuntu, тогда набор LAMP можно установить следующей командой

sudo tasksel install lamp-server
Пользователям других дистрибутивов придется воспользоваться своей системой управления пакетами. В любом случае, можно скачать TorrentFlux с сайта разработчика, в виде файла .tar.gz. Если вы любитель консоли, наберите там
wget http://www.torrentflux.com/torrentflux_2.3.tar.gz
Затем перейдите в каталог с архивом, распакуйте его и скопируйте в каталог Apache:
tar -zxvf torrentflux.tar.gz
mv torrentflux /var/www/torrentflux
Замените /var/www на путь к файловому корню веб-сервера. Затем нужно создать базу данных MySQL, в которой будут храниться управляющие данные TorrentFlux. Создайте базу данных с именем torrentflux и выполните для нее SQL-инструкции. Это можно сделать отдав следующую команду, находясь в каталоге /var/www/torrentflux:
mysqladmin create torrentflux
mysql torrentflux < sql/mysql_torrentflux.sql
Отредактируйте файл config.php, вставьте в раздел 'YOUR DATABASE CONNECTION INFORMATION' информацию о своей базе данных. Потребуется указать адрес веб-сервера (обычно это localhost), имя базы данных (то, что вы вводили раньше - torrentflux), ваше пользовательское имя и пароль. После этого откройте браузер и введите адрес http://localhost/torrentflux. Если все прошло успешно, перед вами должно открыться окно входа в систему. Заходите в систему и перед вами откроется полезный мощный BitTorrent-клиент - TorrentFlux.