Возникла у одного знакомого проблема при установке это дела (это web-морда для торрент-клиента под линукс). При ближайшем рассмотрении выяснилось, что не всё так просто (хотя у другого знакомого завелось в полпинка :)). И так, опишу последовательность действий. Все действия происходили на Ubuntu 9.10.
1)Установка требуемых пакетов.
Поскольку это web-морда, то она требует для себя установки apach’a, php. Будет исходить из того, что они у вас стоят. Ставим дополнительные пакеты:
#apt-get install php5-xmlrpc sqlite unzip php5-curl libxmlrpc-c3 libapache2-mod-scgi libtorrent11
Теперь, что касается самого rtorrent. Рекомендую скачать исходник и поставить из него. Ибо нам нужно собрать его с опцией with-xmlrpc-c (вроде бы можно ставить и из готовых пакетов, но я не уверен, собран ли пакет с этой опцией). Рапаковываем, компиллим и ставим (исходники скачиваем с оф. сайта):
#tar zf rtorrent.tar.bz2 && cd rtorrent && ./configure --with-xmlrpc-c && make && make install && make clean
2) Настройка.
Для web-морды нужны собственно php-скрипты (скачиваем ис с инета. называются они rutorrent, например, отсюда ) и помещаем их в папку /var/www/rutorrent.
Для апача нужен модуль scgi. Выше мы его установили уже. Нужно добавить кое-что в конфигapach’a:
LoadModule scgi_module /usr/lib/apache2/modules/mod_scgi.so
SCGIMount /RPC2 127.0.0.1:5000
Теперь переходим к настройкам rutorrent’a. Переходим в папку /var/www/rutorrent и редактируем в файле config.php такие переменные:
$scgi_port = 5000;
$scgi_host = "127.0.0.1";
Теперь создаём файл в домашнем каталоге непривелигированого пользователя файл .rtorrent.rcследующего содержания:
download_rate = 0
upload_rate = 0
directory = /var/www/rutorrent/torrents
session = /home/sergio
scgi_port = 127.0.0.1:5000;
и ставим ему права:
-rw-r--r-- 1 sergio sergio 125 2009-12-03 17:44 .rtorrent.rc
3) Запуск.
Запускать rtorrent нужно от непривелигированного пользователя, например, от sergio:
$id
uid=1002(sergio) gid=1002(sergio) groups=1002(sergio)
$rtorrent
После запуска rtorrent у вас на экране появится окно клиента. Поэтому, что бы работать нормально, рекомендую rtorrent запускать в screen’ах. Заходим через web по такому адресуhttp://site/rtorrent.
Что бы проверить, что всё работает, делаем следующее:
#netstat -anp | grep 5000
tcp 0 0 127.0.0.1:5000 127.0.0.1:42943 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42951 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42911 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42931 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42922 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42948 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42919 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42893 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42910 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42949 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42956 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42915 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42903 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42929 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42946 TIME_WAIT -
tcp 0 0 127.0.0.1:5000 127.0.0.1:42940 TIME_WAIT -
# netstat -anp | grep rtorrent
tcp 0 0 0.0.0.0:6917 0.0.0.0:* LISTEN 19568/rtorrent
tcp 0 0 127.0.0.1:5000 0.0.0.0:* LISTEN 19568/rtorrent
Это значит, что всё ок.
Оригинал статьи здесь.
Опубликовано с разрешения редакции журнала RootUA и газеты FOSS News