Alexander Mikhalev (alexander_mikh) wrote in ru_mac,
Alexander Mikhalev
alexander_mikh
ru_mac

Category:

rtorrent + wtorrent (webgui) на маке

Для тех кому надоели тормозавры типа azureus и глюки transmission,
спешу поделится опытом установки rtorrent на powerbook под леопардом.
Rtorrent миниатюрный консолевый торрент клиент, с большими возможностями. Wtorrent веб-шкурка к нему для тех, кого не радует консоль.

Для начала нужны macports. У меня они все ставят в /opt/local, чтобы можно было все одним махом удалить при желании.
Порты можно использовать через терминал port install, либо через porticus - на удивление шустрая шкурка к портам.
Собственно начнем:
sudo port install xmlrpc-c
sudo port install lighttpd
sudo port install rtorrent-devel +xmlrpc
sudo port install php5 +fastcgi +sqlite +pear

Дальше берем rtorrent.rc c http://libtorrent.rakshasa.no/ и кладем его в ~/.rtorrent.rc. Файл хорошо комментирован, так что выбирайте опции по себе.
мой выглядит так:
>cat .rtorrent.rc | grep -v '#'
max_peers_seed = 10
max_uploads = 15
download_rate = 0
upload_rate = 70
directory = 'Куда скачивать'
schedule = watch_directory,5,5,load_start=/Users/*/Downloads/torrents/*.torrent
schedule = untied_directory,5,5,stop_untied=
schedule = ratio,60,60,"stop_on_ratio=200,50M,300"
encoding_list = UTF-8
В принципе на этом уже можно было бы остановиться, rtorrent будет автоматически скачивать файлы из торрентов положенных Downloads/torrents/*.torrent (туда их кладет скрипт сортировки), и останавливать если *.torrent файл удален. Но мне бы иногда хотелось посмотреть скорость закачки и прогресс на чем нибудь вменяемом - веб страничка устроит. Поэтому в моем rtorrent.rc есть еще:
scgi_local = /Users/Shared/rpc.socket
Это xmlrpc сокет для общения с lighttpd.
Теперь поправим lighttpd.conf. Мой выглядит вот так, с небольшими сокращениями. Я не хочу чтобы мой вебсервер имел доступ к моим файлам поэтому htdoc ушел в users/shared. Для общения с rtorrent нужен модуль и секция scgi. FastCGI служит для запуска php.

server.modules = (
"mod_access",
"mod_fastcgi",
"mod_scgi",
"mod_accesslog" )
server.document-root = "/Users/Shared/htdocs/"
server.errorlog = "/var/log/lighttpd/error.log"
index-file.names = ( "index.php", "index.html",
scgi.server = (
"/RPC2" =>
( "127.0.0.1" =>
(
"socket" => "/Users/Shared/rpc.socket",
"check-local" => "disable",
)
)
)
accesslog.filename = "/var/log/lighttpd/access.log"
url.access-deny = ( "~", ".inc" )
$HTTP["url"] =~ "\.pdf$" {
server.range-requests = "disable"
}
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
server.port = 8100
server.pid-file = "/opt/local/var/run/lighttpd.pid"
fastcgi.server = ( ".php" =>
( "localhost" =>
(
"socket" => "/opt/local/var/run/php-fastcgi.socket",
"bin-path" => "/opt/local/bin/php-cgi"
)
)
)


Дальше скачиваем wtorrent и распаковываем его в htdocs (tar zxvf ).
wtorrent хочет чтобы ему сделали chmod 777 wtorrent. Поэтому возможно стоило бы озадачиться авторизацией описанной вот тут, но сначала стоит запустить шалтая болтая.
Итак, проверяем пути - директории для логов, пида, сокетов должны существовать и пользователь под которым будем запускаться lighttpd должен иметь достаточно прав, чтобы писать туда.
Запускаем: /opt/local/etc/LaunchDaemons/org.macports.lighttpd/lighttpd.wrapper start
Если запустилось по http://localhost:8100/ (или какой там свой порт выбрали) сервер должен ругнуться 404, если нет - ищите что недокомпилилось, где потерялись.
Для конфигурации wtorrent есть 2 варианта.
Первый http://localhost:8100/wtorrent/install2.php
нужно только заполнить и сохранить формочку.
второй (заработал у меня) в директории conf/ переименовать sample.home.conf и поправить там нужные значения:
// Base URL of application (where index.php is)
define( 'URL', 'http://localhost:8100/wtorrent/' );
define( 'BASE', 'http://localhost:8100/wtorrent/' );
...
// Host or IP to connect to rTorrent
define( 'RT_HOST', 'localhost');
define( 'RT_PORT', 8100);
define( 'RT_DIR', 'RPC2/');
define( 'RT_AUTH', false);
Дальше один раз запускаем install.php, он создает базу и усе (после чего install.php рекомендуется удалить). Теперь можно запускать rtorrent в терминале, и смотреть на прогресс в браузере. Пользуюсь второй день, пока доволен. Пока не научился запускать rtorrent в фоне rtorrent& приводит к тому, что wtorrent не может соединиться. Есть к чему стремится - вот тут товарищ поставил rtorrent на my book world.
Tags: торрент-клиенты
Subscribe
  • Post a new comment

    Error

    Comments allowed for members only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 58 comments