Несколько слов о торрентах для линкусоидов

 | 17.32

Мой Компьютер, №03 (507), 02.06.2008

Учитывая популярность протокола, в комплекте любого современного дистрибутива уже есть нужный клиент. Если он вам не подходит, достаточно поискать в репозитарии ему альтернативу. В Debian/Ubuntu это просто:

$ sudo apt-cache search torrent

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

Официальный BitTorrent

На официальном сайте проекта BitTorrent (www.bittorrent.com) можно скачать клиентскую программу не только для Windows, но и для MacOS X и Linux. Последний является развитием оригинального клиента, написанного Брэмом Коэном (Bram Cohen). Чтобы понять отношение к Linux-версии, достаточно прочитать название ссылки для закачки — «Linux, Source Code and Older Versions». Версия для Linux под номером 5.2.0 датирована сентябрем 2007, вариант под Windows — 6.0.3. Для некоторых версий кроме исходных текстов можно найти rpm- и deb-пакеты. В репозитарии Ubuntu для установки официального BitTorrent следует выполнить команду:

$ sudo apt-get install bittorent bittorent-gui

Как видно по устанавливаемым пакетам, программа консольная, интерфейс устанавливается отдельно. После установки в системе появится большое количество утилит, начинающихся с bt*.

 Вход в уголок маньяка

Но есть еще один момент, о котором следует знать пользователям Ubuntu и других Debian-совместимых дистрибутивов. Если в системе установлен другой клиент — BitTornado, то вызов GUI командой btdownloadgui по умолчанию запускает именно его. Если посмотреть имена утилит, то они в этих пакетах выглядят как btdownloadgui.bittorrent и btdownloadgui.bittornado. А команда ls выдаст такую информацию:

$ ls -al /usr/bin/btdownloadguilrwxrwxrwx 1 root root 31 2008-05-17 21:33 /usr/bin/btdownloadgui -> /etc/alternatives/btdownloadgui

То есть чтобы изменить команду, запускаемую по умолчанию, следует использовать update-alternatives.

$ sudo update-alternatives —config btdownloadgui

Вводим число, выбрав альтернативу, или оставляем как есть. И так по каждой утилите.

 Выход из уголка маньяка

За закачку файлов отвечают три утилиты: btdownloadheadless, btdownloadcurses, btdownloadgui — соответственно, консольная, построенная на библиотеках ncurses и графическая. Вызов команды в любом случае одинаков:

$ btdownloadcurses file.torrent

Но GUI-вариант позволяет лишь наблюдать за ходом процесса установки пакетов, интерфейсом это даже назвать рука не поднимается. Чтобы повлиять на параметры закачки, программу придется перезапустить с нужными параметрами, введя их в консоли.

Проблема в том, что в репозитарии Ubuntu до сих пор находится старая версия 3.4.2, которая после знакомства вызывает только одно желание — побыстрее удалить эту программу. Deb-пакет версии bittorrent_5.0.9_python2.5.deb, взятый с сайта проекта, без проблем установился из контекстного меню Ubuntu через GDebi. Автоматически из репозитария Ubuntu были получены еще 14 пакетов для удовлетворения зависимостей.

Это уже не такой запутанный вариант. Чтобы увидеть GUI, достаточно ввести в консоли bittorent (в меню нужный пункт придется создавать самостоятельно). Интерфейс программы прост и локализован (рис. 1).

Рис. 1

Торренты можно добавлять при помощи кнопки Add или простым перетаскиванием. Правда, выяснилось, что Bittorent не очень дружит с кодировками. Например, с Рабочего стола (/home/user/Рабочий стол) добавить в проект файл нельзя (рис. 2).

Рис. 2

Возможна установка приоритетов для торрентов и общего ratio скорости (Upload/Download).

Для удобства можно вывести статистику в нижнем окне. Нажав кнопку Info, получаем информацию по трафику, скорости, peers (клиенты, участвующие в раздаче). Строка поиска запускает браузер и приводит на сайт проекта, альтернативу указать нельзя. При сворачивании значок в трее не появляется, что тоже не очень удобно. Новый торрент создается в меню Make new torrent, ничего сложного этот процесс из себя не представляет. При работе в GUI можно запустить консоль PyShell. Но как-то особых чувств официальный клиент у меня не вызвал. Клиент как клиент.

Transmission

Сайт: http://transmissionbt.com

Легковесный клиент, построенный на библиотеках GTK+ и встречающийся в некоторых дистрибутивах с Рабочим столом GNOME, например, в Ubuntu 8.04 «Hardy Heron». Первые версии были малофункциональны, а интерфейс глаз не радовал. Но проект развивается довольно быстрыми темпами, и многие недостатки давно уже позади. Интерфейс Transmission по-прежнему очень прост и комфортен (рис. 3).

Внешне напоминает Bittorrent, только без вывода статуса внизу окна.

Во владение пользователь получает только панель управления и список торрентов. На первый взгляд Transmission может показаться слишком примитивным, но с выводами спешить не стоит, на самом деле он обладает богатыми настройками и возможностями. Так, возможна как глобальная установка ограничения ratio, так и для отдельного торрента.

Рис. 3

Приоритеты торрентов выставляются следующим образом. Нажав на Details, получаем полную статистику по выбранному торренту, в том числе и по peers. Аналогично доступна глобальная статистика как за текущую сессию, так и в целом. Доступна верификация полученного файла или его части. Реализован поиск среди торрентов. Можно быстро отобрать список торрентов по их состоянию (active, downloading и прочие), нажав кнопку на панели, что очень удобно, если список большой. Поддерживается шифрование соединений между пирами, кэширование пиров. Имеется меню для создания собственных torrent-файлов. Возможна безтрекерная работа. Transmission совместим с некоторыми клиентами (Azureus и мTorrent). Поддерживается добавление торрент-файлов в список перетаскиванием. И что меня порадовало при запуске — появляется значок в трее.

Но это не все. Доустановив пакет transmission-cli, получаем еще ряд утилит.

В первую очередь это консольный вариант — transmissioncli. С его помощью можно произвести те же операции, что и через GUI. Например, чтобы скачать файл, используем такую команду:

$ transmissioncli –v torrent-file

Используя ключи, можно задать другие параметры: -n — использование NAT-PMP, -o — каталог для результирующего файла. Параметры -d/-u регулируют скорость download/upload в Кб/с. По умолчанию скорость закачки неограничена

(-1), а upload равен 20. Например, такой командой можно по очереди запускать torrent-файлы находящиеся в подкаталоге torrents, ограничив скорость отдачи до 30 Кб/с:

$ find ./torrents -type f -exec transmissioncli -u 30 {} ;

Для анонса вводим следующую команду:

$ transmissioncli —announce http://tracker:6969/announce

—private -c directory /tmp/torrent

Информация о торрентах сохраняется в подкаталоге ~/.transmission.

Может работать transmission и в режиме демона. Для этого запускается утилита transmission-daemon, управление которой осуществляется при помощи другой утилиты — transmission-remote. Переданные им установки запоминаются, поэтому можно команды передавать последовательно, по мере необходимости. Например, добавляем торрент:

$ transmission-remote file.torrent second.torrent

Просмотреть текущий статус всех торрентов можно так:

$ transmission-remote –l

Также просто изменить установки rate:

$ transmission-remote –d 50 –u 10

Параметр –x позволяет указать прокси. В комплекте Transmission есть свой прокси — transmission-proxy. Кроме интерфейса GTK+ для Transmission существуют и web-интерфейсы, например, Clutch (clutchbt.com) или torrentflux (http://developer.berlios.de/projects/tf-b4rt). Радует, что Transmission очень легок и практически незаметен в работе даже на слабых машинах.

Осталось добавить, что кроме Linux-версии есть вариант Transmission и под MacOS X. Основная часть программы выходит под GNU GPL, отдельные фрагменты под лицензией MIT.

KTorrent

Сайт: http://ktorrent.org

В дистрибутивах, использующих в качестве рабочего окружения KDE, обычно установлен клиент KTorrent. Сегодня параллельно развиваются две ветки. Версия 2.2.x предназначена для KDE 3 (рис. 4), версия KTorrent 3.х написана на основе библиотек Qt 4.4 для KDE 4.

Рис. 4

В репозитарии Ubuntu 8.04 находятся обе версии (второй пакет называется ktorrent-kde4). Из описанных клиентов этот наиболее функциональный. Окно по умолчанию содержит две вкладки: Загрузки и Раздачи. При выполнении некоторых действий, например, поиска файла, будут появляться и другие. При необходимости внизу можно открыть окно статуса, в котором будет выводиться подробная информация о загрузке.

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

При поиске пользователь может выбрать один из сайтов BitTorrent, для поиска через KParts задействуется браузер Konqueror. При желании легко можно в настройках добавить другие поисковые ресурсы.

Поддерживается шифрование трафика BitTorrent. Настроить поведение шифрования трафика можно во вкладке Общие меню Настройка > Настроить Ktorrent. Поддерживается раздача без трекера.

Рис. 5

В установке по умолчанию функций KTorrent может показаться маловато, хотя и вполне достаточно для нетребовательного пользователя. Возможности Ktorrent расширяются за счет дополнительных модулей, настройки которых доступны во вкладке Модули меню Настройка. Интересно, что в общем-то стандартные функции вроде импорта торрент-файлов, UDP-трекеров, UPnP и некоторые другие, также реализованы за счет модулей. Для активации выбранного модуля достаточно нажать кнопку Включить. Здесь есть ряд полезных модулей, позволяющих: найти peers в локальной сети при помощи Zeroconf, сканировать каталоги на предмет наличия новых торрентов, закачать файлы, недокачанные другими клиентами, есть планировщик использования канала, а также модули, позволяющие создавать черный список IP-адресов, обнаруживать и добавлять в список закачки торрент-ссылки из RSS-потока, управлять KTorrent при помощи web-браузера (рис. 5).

Рис. 6

Для библиотек Qt в репозитарии есть еще один клиент — qtorrent (рис. 6). Это весьма примитивная программа, умеющая только скачивать файлы, без какого-либо воздействия на процесс, лишенная даже минимальных настроек. Но, возможно, ее сила именно в простоте.

Итак, первый забег торрент-клиентов закончен. Но это далеко не все, что есть для Linux.

Linux forever!

Сергей «grinder» ЯремЧук

Robo User
Web-droid editor

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *