Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   rtorrent + web (rutorrent) на FreeBSD 8.2 (http://forum.oszone.net/showthread.php?t=215225)

Призрак 09-09-2011 12:11 1749508

rtorrent + web (rutorrent) на FreeBSD 8.2
 
Здравствуйте Уважаемые участники дискуссии.

Решил я настроить FreeBSD 8.2 для закачки через торрент. Пробовал transmission, но он мне не понравился, после долгих поисков по сети я решил что мне больше подойдет rtorrent + WEB интерфейс (Я управляю сервером через SSH и мне нужнен доступ к rtorrent через WEB интерфейс). Приступил к установке и настройке, но столкнулся с большими трудностями - переворошил огромное количество статей, в которых невнятно написано про сам процесс установки и настройки, в итоге у меня ничего не получилось. Есть 2 проблемы:

1. Пользователь, от которого будет запускаться rtorrent. В одной статье написано, что создавать его надо с параметром /sbin/nologin (но тогда я не знаю откуда будет подгружаться конфигурационный файл .rtorrent.rc, ведь он должен быть в домашней директории пользователя!). В другой статье написано о том, что создавать пользователя нужно с параметром /bin/sh и с домашней директорией, а также с паролем. В итоге при запуске FreeBSD я получаю сообщение su: unknown login:rtorrent и rtorrent даже не запускается.

2. Скрипт автозапуска rtorrent - я перепробовал несколько вариантов. Ни один из них не работает нормально, один запускает rtorrent при загрузке системы, но если rtorrent слетает или я по каким либо причинам его останавливаю он больше не запускается. Второй скрипт просто тупо пишет в лог что остановил/стартанул rtorrent но rtorrent все равно не запускается даже при загрузке системы. И вообще я не понимаю зачем в скрипте указывать директории, они указываются в файле .rtorrent.rc

2.1. Скрипт №1:

Код:

#!/bin/sh
#
#

# PROVIDE: rtorrent
# REQUIRE: LOGIN
# KEYWORD: shutdown

. /etc/rc.subr

name="rtorrent"
rcvar=`set_rcvar`

load_rc_config $name

: ${rtorrent_enable="NO"}
: ${rtorrent_downloads="/usr/local/rtorrent/downloads"}
: ${rtorrent_sessions="/usr/local/rtorrent/sessions"}
: ${rtorrent_scgi_port=""}
: ${rtorrent_encoding_list="UTF-8;cp1251;koi8-r"}
: ${rtorrent_args=""}
: ${rtorrent_user="rtorrent"}
: ${rtorrent_autoload_dir=""}

command="/usr/local/bin/rtorrent"
screen="/usr/local/bin/screen"

rtorrent_args="-d ${rtorrent_downloads} -s ${rtorrent_sessions} ${rtorrent_args}"

[ -n "${rtorrent_autoload_dir}"  ] && rtorrent_args="-O schedule='watch_directory,5,5,load_start=${rtorrent_autoload_dir}' ${rtorrent_args}"
[ -n "${rtorrent_scgi_port}"    ] && rtorrent_args="-O scgi_port='${rtorrent_scgi_port}' ${rtorrent_args}"
[ -n "${rtorrent_encoding_list}" ] && rtorrent_args="-O encoding_list='${rtorrent_encoding_list}' ${rtorrent_args}"

start_cmd="echo Starting ${name}.; su -m ${rtorrent_user} -c \"${screen} -A -m -d -S rtorrent ${command} ${rtorrent_args}\""

run_rc_command "$1"

2.2. Скрипт №2

Код:

#!/bin/sh
#
# rtorrent RCng startup script
# by Emanuele Cipolla (mail at emanuelecipolla dot net)
# Shamelessly ripped off the aMule startup script by Gabriele Cecchetti (amule.org forum)
#
 
# PROVIDE: rtorrent
# REQUIRE: NETWORKING SERVERS
# BEFORE: DAEMON
# KEYWORD: shutdown
 
#
# Add the following lines to /etc/rc.conf to enable rtorrent at startup
# rtorrent (bool): Set to "NO" by default.
#                Set it to "YES" to enable rtorrent
# rtorrent_user (str): Set to user running rtorrent
#                    (default 'p2p')
# rtorrent_home (str): Set to home directory of user running rtorrent
#                    (default /home/${rtorrent_user})
 
. /etc/rc.subr
 
name="rtorrent"
rcvar=`set_rcvar`
 
load_rc_config $name
 
[ -z "$rtorrent_enable" ] && rtorrent_enable="NO"
[ -z "$rtorrent_user" ] && rtorrent_user="p2p"
[ -z "$rtorrent_home" ] && rtorrent_home="/home/${rtorrent_user}"
 
required_dirs=${rtorrent_home}
required_files="${rtorrent_home}/.rtorrent.rc"
 
start_cmd="${name}_start"
stop_cmd="${name}_stop"
 
rtorrent_start()
{
        if [ ! -f /var/run/${name}.run ]
        then
      cd ${rtorrent_home}
      su ${rtorrent_user} -c "/usr/local/bin/screen -dmS rtorrent_init /usr/local/bin/rtorrent"
      touch /var/run/${name}.run
          echo "Started ${name}."
          echo `date` : "Started ${name}." >> /var/log/${name}.log
        else
          echo "${name} seems to be already running -- remove /var/run/${name}.run manually if needed."
        fi
}
 
rtorrent_stop()
{
        if [ -f /var/run/${name}.run ]
        then
          killall -INT $(echo -n 'ps aux | grep rtorrent | grep -v rtorrent_init') 2>>/var/log/${name}.log >>/var/log/${name}.log
          rm -f /var/run/${name}.run
          echo "Stopped ${name}."
          echo `date` : "Stopped ${name}." >> /var/log/${name}.log
        else
          echo "${name} doesn't seem to be running -- create /var/run/${name}.run if needed."
        fi
}
 
run_rc_command "$1"

Разумеется, в скриптах я ставил своего созданного пользователя и пути к папкам.

Также в rc.conf добавлены следующие строчки:

Код:

rtorrent_enable="YES"
rtorrent_scgi_port="127.0.0.1:5000

А так в Apache модуль scgi подгружен, вход через WEB интерфейс осуществляется с паролем, но в логе WEB интерфейса написано:

Код:

Нет связи с rTorrent. Проверьте, запущен ли он. Проверьте, что параметры $scgi_port и $scgi_host в файле config.php совпадают со значением переменной scgi_port в файле конфигурации rTorrent.
При этом то, что там написано все на самом деле правильно настроено, проверял 10 раз. все равно бесполезно, команда sockstat | grep rtorrent ничего не показывает.

Помогите пожалуйста решить проблему, кроме того, я слышал, что rtorrent можно настроить на подключение через UNIX Socket но опять же статьи в Интернете невнятные. Видать разучились "профессионалы" хорошие статьи писать, у них на все один ответ - man (название) и все.

vadblm 09-09-2011 13:41 1749592

Цитата:

Цитата Призрак
Разумеется, в скриптах я ставил своего созданного пользователя и пути к папкам. »

Редактировали сами скрипты или прописывали в rc.conf rtorrent_enable="YES", rtorrent_user="user" и что там ещё вам надо?

Призрак 09-09-2011 13:55 1749603

То, что я прописывал в rc.conf прекрасно видно в моем первом сообщении в этой теме. А надо мне понять все - таки безо всякого информационного мусора как нормально создать пользователя, скрипт на запуск и файл .rtorrent.rc и где он должен находиться.

vadblm 09-09-2011 14:25 1749646

Цитата:

Цитата Призрак
То, что я прописывал в rc.conf прекрасно видно в моем первом сообщении в этой теме »

Извините, не видно.
Цитата:

Цитата Призрак
таки безо всякого информационного мусора »

Ну как хотите, я помощь не навязываю.

dmitryst 09-09-2011 17:09 1749770

Цитата:

Цитата Призрак
Пробовал transmission, но он мне не понравился, »

а зря. Под него есть и вэб, и .NET-интерфейс, и работает он отлично. Правда, с "горячими папками" я так и не разобрался.

Цитата:

Цитата Призрак
rtorrent_scgi_port="127.0.0.1:5000 »

а без этого нормально работает?

Призрак 11-09-2011 19:16 1750948

Цитата:

Цитата vadblm
Ну как хотите, я помощь не навязываю. »

vadblm, я не имею ничего против Вашей помощи, и я написал некорректно. Под информационным мусором я подразумеваю недостатьи в Интернете по настройке rtorrent, а не Вашу помощь. Вы мне очень помогли в предыдущей теме, и я Вам благодарен. В файле rc.conf я прописал:

Код:

rtorrent_enable="YES" автозапуск rtorrent
rtorrent_scgi_port="127.0.0.1:5000 это для того, чтобы WEB интерфейс подключался через scgi модуль в Apachе22

это все было указано в одной статье.

Только со скриптами не разобрался все еще.

Цитата:

Цитата dmitryst
а зря. Под него есть и вэб, и .NET-интерфейс, и работает он отлично. Правда, с "горячими папками" я так и не разобрался. »

я пробовал, но мне не понравилось, что transmission плохо раздает. Качает то он хорошо, а с раздачами беда. А что там за горячие папки?

Цитата:

Цитата dmitryst
а без этого нормально работает? »

честно говоря еще не пробовал, попробую отпишусь. Но если тут говорят, что transmission отлично работает, надо будет его опять попробовать. Только мне нужно знать как его заставить раздавать нормально и как лучше открыть для него порты. Просто в Интернете о нем негативно отзываются.

Kent 12-09-2011 00:14 1751116

Цитата:

Цитата Призрак
+ WEB интерфейс »

Так ли принципиален WEB-интерфейс?
Я, в редких случаях, использую nTorrent. В основном, хватает управления из консоли.

dmitryst 12-09-2011 11:07 1751273

Цитата:

Цитата Призрак
Качает то он хорошо, а с раздачами беда. »

не знаю, у меня он и качал, и раздавал на полной скорости - можно просто количество слотов подстроить для максимальной отдачи.

Цитата:

Цитата Призрак
А что там за горячие папки? »

кидается туда .torrent и он автоматически добавляется в закачки.

Цитата:

Цитата Призрак
Просто в Интернете о нем негативно отзываются. »

не знаю , я был доволен. Интерфейс как из браузера, так и из спец-оболочки (transmission remote .NET - http://code.google.com/p/transmission-remote-dotnet/).


Время: 14:38.

Время: 14:38.
© OSzone.net 2001-