Bitflu — демон для torrent-закачек

Начал я недавно всякие там torrent-ы качать. И коль уж стоит на холодильнике сервер, то логичнее всего было нагрузить этой работой именно его.

Первое решение было исполнено тупо в лоб. Запускал я NX-сессию, а в ней — установленного под Wine клиента — программу µTorrent. Накидывал в µTorrent закачек, а потом отключался от NX-сессии, не завершая ее. Все работало нормально, но только вот грузил весь этот «слоеный пирог» процессор сервера на всю катушку:

График загрузки процессора

Кто-то скажет — «Ну и что? Ну подумаешь, загружен процессор по самое не могу, но не в Квэйк же на нем параллельно играть». В игры я действительно на своем сервере не играю, да и сложно это сделать без монитора, клавиатуры и мыши. Однако, он выполняет много других задач. Но самое отвратительное было в том, что от такой загрузки процессор разогревался (градусов до 70) и материнка, чтоб охладить его, разгоняла вентилятор до пары с лишним тысяч оборотов. И шум этого пропеллера ну очень уж мешал!

Выход был в том, чтобы найти программу в «традиционном» для Linux стиле — запускающуюся в режиме демона и управляющуюся либо с консоли, либо через вэб-интерфейс. После непродолжительных поисков я для себя выбрал программу bitflu.  В программе присутствует именно все то, что я от нее хотел:

  • запуск в режиме демона с консоли (после этого можно сессию консоли закрыть, а программа остается в работе);
  • управление программой возможно как из консоли (в telnet-сессии), так и через вэб-интерфейс.

Кроме того,  лично мне очень понравилась еще одна фишка — программа создает специальную папку autoload и периодически ее просматривает. Если в папке при проверке находится torrent-файл, программа автоматически начинает его закачку. Это позволяет стартовать закачки, находясь «вдали» от сервера (например, подключившись ftp-клиентом к серверу и накидавши в данную папку ссылок).

Из недостатков следует отметить следующее:

  • программа не может самостоятельно создавать torrent-ы для раздачи (она может лишь раздавать уже созданные);
  • у программы нет ограничения максимальной скорости закачки (есть лишь ограничение скорости раздачи).

На данном этапе лично для меня оба эти недостатка не критичны…

Установка программы проста до безобразия — скачанный архив нужно распаковать в папку. Требование лишь одно — пользователю, от имени которого будет запускаться программа, должна быть разрешена запись в данную папку. Изначально, в папке с только что распакованной программой отсутствует файл конфигурации (.bitflu.config). Но он автоматически создается при первом запуске программы. После этого, его можно отредактировать, изменив параметры в соответствии с собственными потребностями. Описание параметров можно почитать на этой странице. Все, что отредактировал лично я — это номер порта, открытого для torrent-а.

В режим демона программа запускается командой:

./bitflu.pl —daemon

Чтобы управлять программой в консоли, нужно  ввести комманду:

telnet 127.0.0.1 4001

Вот так выглядит интерфейс управления программой в консоли (telnet-сессии):

Управление bitflu с помощью telnet (в консоли)

Чтобы подключиться к веб-интерфейсу программы, нужно запустить браузер (любой) и ввести следующий адрес:

http://127.0.0.1:4081/

А вот так выглядит веб-интерфейс программы:

Html-интерфейс

Как видно по адресу (127.0.0.1), что консольное управление программой, что веб-интерфейс запускаются только локально (для удаленного управления нужно войти в компьютер по ssh или nx сессии)…

Итого — свою проблему я решил. Процессор загружен на пару-тройку процентов, температура его не выше 50 градусов, и вентилятор крутится со скоростью  менее полутора тысяч оборотов. И тихо, и торренты качаются!…