Страница 2 из 10

Re: статья про rtorrent и вебморду

Добавлено: 2009-02-18 11:18:54
opt1k
конфиг опишу. Пиры у меня видны, правда не всегда отображаются сразу.
Эл, авторизацию по логину паролю проходите? попробуйте скормить торрент rtorrent'у через консоль и посмотрите будет ли он виден через веб интерфейс. А вообще проверьте работает ли сам rtorrent. Пользователя от которого пускаете rtorrent надо предварительно создать, этого нет в статье, ща добавлю.

Re: статья про rtorrent и вебморду

Добавлено: 2009-02-24 13:18:13
Larin
хых. красивая морда. только жму add file но торрент не добавляется..
странно.

Re: статья про rtorrent и вебморду

Добавлено: 2009-02-28 17:57:19
opt1k
права на директории проверь

Re: статья про rtorrent и вебморду

Добавлено: 2009-03-13 18:17:52
100kg
lighthttpd

Код: Выделить всё

scgi.server = (
                "/RPC2" =>
                  ( "127.0.0.1" =>
                    (
                      [b]"socket" => "/var/tmp/rtorrent_rpc.socket"[/b],
                      "check-local" => "disable",
                      "disable-time" => 0,  # don't disable scgi if connection fails
                    )
                  )
              )
apache

Код: Выделить всё

SCGIMount /RPC2 127.0.0.1:5000
lighthttp общается через файловый сокет а apache через сетевой, как вот apache заставить работать тоже через файловый сокет? не хочу скрипт менять :smile:

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-01 13:10:39
FenX
100kg писал(а):как вот apache заставить работать тоже через файловый сокет? не хочу скрипт менять :smile:
к сожалению, судя по документации, mod_scgi работает только по сетевому =(

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-07 3:26:42
iamxray
Не стал создавать новую тему, спрошу тут. Если что сильно не пинайте :pardon:
В данный момент хочу сделать автоматического суперсида из файлового сервера(фря 7.1), на моем торрент трекере есть скрипт, который автоматом генерит торрент файлы(с файлов которые находятся на файловом сервере).

Хочу через свой скрипт управлять торрент клиентом, допустим человек залил файл на файловый сервер, оформил раздачу(скрипт сделал торрент файл с пользовательского файла) и автоматом сам встал на раздачу(отправив торент клиенту торент файл и месторасположения файла который надо раздавать). Так же скрипт будет становится на раздачу когда кто то скачает торрент файл, а сидов нет и т.д. :crazy:

Вот теперь осталось выбрать торрент клиент под бсд, которым можно будет управлять через скрипт,отсылая ему команды. Как вы считаете rtorrent подойдет для данной цели? И на какой клиент еще стоит обратить внимание?
П.с. ээх, еще для DC++ тоже самое, можно еще mldonkey попробовать там и торент и дс и управление как угодно...

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-07 7:58:14
FenX
rtorrent подойдёт вполне :)
делаем просто:

Код: Выделить всё

$ echo 'schedule = watch_directory,5,5,load_start=/your_dir/*.torrent' >> $HOME/.rtorrent.rc
т.е. в .rtorrent.rc в хомяке пользователя, от которого рторрент будет работать,
добавить планировку: каждые 5 секунд загружать и запускать торрент файлы, которые расположены в /your_dir/
если торрент уже загружен и работает, то повторно он запущен не будет.

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-13 9:51:21
abufct
Что-то не очень понял, а стоп у rc-скрипта будет работать?
Я тут с ним повозился немного, вот что получилось:

Код: Выделить всё

#!/bin/sh
# Maintainer: abufct, ver. 1.1.
#
# PROVIDE: rtorrent
# REQUIRE: DAEMON mountdata
# BEFORE: LOGIN
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable rtorrent:
#
#  rtorrent_enable="YES"
#  # optional
#  rtorrent_user="torrent"
#  rtorrent_www="www"

. /etc/rc.subr

name="rtorrent"
rcvar=`set_rcvar`
load_rc_config $name

# Set some defaults
eval ": \${$rcvar:='NO'}" # rtorrent_enable
: ${rtorrent_user:="torrent"}
: ${rtorrent_www:="www"}
: ${rtorrent_socket:="/var/tmp/rtorrent_rpc.socket"}
: ${rtorrent_bin:="/usr/local/bin/rtorrent"}

rtorrent_args="$rtorrent_args -o scgi_local=\"$rtorrent_socket\""
pidfile=${rtorrent_pidfile:-"/var/run/rtorrent.pid"}
command="/usr/local/bin/screen"
command_args="-dmS \"$name\" \"$rtorrent_bin\" $rtorrent_args"

pid=$(cat "$pidfile" 2>/dev/null)

isrunning()
{
	[ -n "$pid" ] &&
	ps -o args= -p $pid | grep -l "$rtorrent_bin" > /dev/null
	return $?
}

start()
{
	if isrunning; then
		echo "$name already running? (pid=$pid)."
		return
	fi

	echo Starting $name.

	rm -f "$rtorrent_socket"

	eval HOME="~$rtorrent_user"
	su -m $rtorrent_user -c "\"$command\" $command_args" || return 1

	while [ ! -e "$rtorrent_socket" ]; do 
		sleep 0.01
	done

	chown $rtorrent_www "$rtorrent_socket"
	ps -o pid= -o comm= -U $rtorrent_user |
		grep "$(basename $rtorrent_bin)" |
		sed "s/ *\([0-9]*\).*/\\1/" |
		head -1 > "$pidfile"
}

stop()
{
	if ! isrunning; then
		echo "$name not running? (check $pidfile)."
		return
	fi

	echo Stopping $name.

	kill $pid
	rm -f "$rtorrent_socket" "$pidfile"
}

status()
{
	if isrunning; then
		echo $name is running as pid $pid.
	else
		echo $name is not running.
	fi
}

start_cmd="start"
stop_cmd="stop"
status_cmd="status"

run_rc_command "$1"
к сожалению, стандартными средствами воспользоваться не получилось: из-за того, что рторрент в скрине, гораздо дольше инфраструктуре объяснять, что, где и как, чем самому написать старт и стоп.
а ещё:

Код: Выделить всё

# cat ~torrent/.screenrc
multiuser on
acladd abufct

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-16 1:08:52
MASiK
У меня вообще РТОРРЕНТ коре дампит вот такое предварительно сказав

Код: Выделить всё

( 2:21:45) Using 'kqueue' based polling.
( 2:21:45) XMLRPC initialized with 496 functions.
( 2:21:45) The SCGI socket is bound to a specific network device yet may still pose a security risk, consider using 'scgi_loca
[Throttle off/off KB] [Rate   0,0/  0,0 KB] [Port: 50358] [Local 62.117.120.190] [Bind 62.117.120.190] [U 0/1] [D 0/0] [H 0/3terminate called after throwing an instance of 'std::bad_alloc'
                                                                what():  std::bad_alloc
                                                                                       Аварийное завершение(core dumped)

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-16 7:56:40
abufct
std::bad_alloc
памяти не хватает?

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-16 8:42:49
MASiK
Фига дожил.... Это что значит памяти не хватает?!

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-25 8:50:00
m0ps
на сайте rtorrenta есть пример конфига для апача

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-25 21:55:08
FenX
а как все же через апач сделать? просто стоит апач не хочется снести и ставить этот лайт...
элементарно...

Код: Выделить всё

make -C /usr/ports/www/mod_scgi/ install clean
httpd.conf

Код: Выделить всё

LoadModule scgi_module        libexec/apache22/mod_scgi.so

    SCGIMount /RPC2 127.0.0.1:5000
    <Location /RPC2>
        AuthName "p2p torrents"
        AuthType Basic
        AuthBasicProvider file
        AuthUserFile /usr/local/www/.htpasswd
        Require user tralala
    </Location>
.rtorrent.rc

Код: Выделить всё

scgi_port = localhost:5000
/usr/local/etc/rc.d/rtorrent

Код: Выделить всё

#!/bin/sh
# PROVIDE: rtorrent
# REQUIRE: LOGIN
# KEYWORD: shutdown

. /etc/rc.subr

name="rtorrent"
rcvar=`set_rcvar`

load_rc_config $name

: ${rtorrent_enable="NO"}
: ${rtorrent_user=""}

pidfile="/var/run/${name}.pid"
command="/usr/local/bin/rtorrent"

start_cmd="echo \"Startting ${name}.\"; su ${rtorrent_user} -c 'screen -A -m -d -S ${name} ${command}'"
start_postcmd="${name}_poststart"

rtorrent_poststart()
{
	sleep 4
	ps aux | grep ${name} | grep ${rtorrent_user} | awk '{print($2)}' > ${pidfile}
	echo "Done"
}

run_rc_command "$1"

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-26 15:25:51
mayor
все завел с апачем но не добавляет торент файлы - что может быть?, пишет в браузере:

Код: Выделить всё

Файл должен быть файлом .torrent.

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-26 20:20:17
m0ps
читать логи вебсервера

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-27 15:08:08
manefesto
епт, поставьте torrentflux и не парьтесь

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-27 19:23:19
mayor
manefesto писал(а):епт, поставьте torrentflux и не парьтесь
пробовал порт закрыт пока...

поставил по статье все работает кроме авторизации что может быть?, в логе:

Код: Выделить всё

(19:24:28 </>) 0 # tail -f /var/log/lighttpd.error.log
2009-04-27 14:04:56: (http_auth.c.868) get_password failed
2009-04-27 14:05:14: (http_auth.c.868) get_password failed
2009-04-27 14:06:28: (http_auth.c.868) get_password failed
2009-04-27 14:08:13: (server.c.1469) server stopped by UID = 0 PID = 0
2009-04-27 14:08:15: (log.c.97) server started
2009-04-27 19:24:24: (server.c.1469) server stopped by UID = 0 PID = 0
2009-04-27 19:24:27: (log.c.97) server started
2009-04-27 19:25:32: (http_auth.c.868) get_password failed
2009-04-27 19:25:33: (http_auth.c.868) get_password failed
2009-04-27 19:25:44: (http_auth.c.868) get_password failed
конфиг сервака точняком со статьи, только одну кавычку убрал а то не запускался (косяк наверное):

Код: Выделить всё

(19:34:43 </>) 0 # cat /usr/local/etc/light
lightsquid/           lighttpd.conf         lighttpd.conf.sample
(19:34:43 </>) 0 # cat /usr/local/etc/lighttpd.conf | less

server.modules              = (
                               "mod_rewrite",
                               "mod_redirect",
                               "mod_alias",
                                "mod_access",

                               "mod_auth",
                               "mod_fastcgi",
                                "mod_scgi",
                                "mod_accesslog" )

######### Options that are good to be but not neccesary to be changed #######

## bind to port (default: 80)
server.port                = 81


server.document-root        = "/usr/local/www/data"
server.errorlog             = "/var/log/lighttpd.error.log"
index-file.names            = ( "index.php", "index.html",
                                "index.htm", "default.htm" )
server.event-handler = "freebsd-kqueue" # needed on OS X
mimetype.assign             = (
  ".pdf"          =>      "application/pdf",
  ".sig"          =>      "application/pgp-signature",
  ".spl"          =>      "application/futuresplash",
  ".class"        =>      "application/octet-stream",
  ".ps"           =>      "application/postscript",
  ".torrent"      =>      "application/x-bittorrent",
  ".dvi"          =>      "application/x-dvi",
  ".gz"           =>      "application/x-gzip",
  ".pac"          =>      "application/x-ns-proxy-autoconfig",
  ".swf"          =>      "application/x-shockwave-flash",
  ".tar.gz"       =>      "application/x-tgz",
  ".tgz"          =>      "application/x-tgz",
  ".tar"          =>      "application/x-tar",
  ".zip"          =>      "application/zip",
  ".mp3"          =>      "audio/mpeg",
  ".m3u"          =>      "audio/x-mpegurl",
  ".wma"          =>      "audio/x-ms-wma",
  ".wax"          =>      "audio/x-ms-wax",
  ".ogg"          =>      "application/ogg",
  ".wav"          =>      "audio/x-wav",
  ".gif"          =>      "image/gif",
  ".jar"          =>      "application/x-java-archive",
  ".jpg"          =>      "image/jpeg",
  ".jpeg"         =>      "image/jpeg",
".png"          =>      "image/png",
  ".xbm"          =>      "image/x-xbitmap",
  ".xpm"          =>      "image/x-xpixmap",
  ".xwd"          =>      "image/x-xwindowdump",
  ".css"          =>      "text/css",
  ".html"         =>      "text/html",
  ".htm"          =>      "text/html",
  ".js"           =>      "text/javascript",
  ".asc"          =>      "text/plain",
  ".c"            =>      "text/plain",
  ".cpp"          =>      "text/plain",
  ".log"          =>      "text/plain",
  ".conf"         =>      "text/plain",
  ".text"         =>      "text/plain",
  ".txt"          =>      "text/plain",
  ".dtd"          =>      "text/xml",
  ".xml"          =>      "text/xml",
  ".mpeg"         =>      "video/mpeg",
  ".mpg"          =>      "video/mpeg",
  ".mov"          =>      "video/quicktime",
  ".qt"           =>      "video/quicktime",
  ".avi"          =>      "video/x-msvideo",
  ".asf"          =>      "video/x-ms-asf",
  ".asx"          =>      "video/x-ms-asf",
  ".wmv"          =>      "video/x-ms-wmv",
  ".bz2"          =>      "application/x-bzip",
  ".tbz"          =>      "application/x-bzip-compressed-tar",
  ".tar.bz2"      =>      "application/x-bzip-compressed-tar",
  ""              =>      "application/octet-stream",
 )
accesslog.filename         = "/var/log/lighttpd.access.log"
url.access-deny = ("~", ".inc", ".db", ".tpl.php", ".cls.php",)
$HTTP["url"] =~ "\.pdf$" {
  server.range-requests = "disable"
}
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
server.pid-file            = "/var/run/lighttpd.pid"
server.username            = "www"
server.groupname           = "www"

fastcgi.server             = ( ".php" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/tmp/fcgi",
                                   "bin-path" => "/usr/local/bin/php-cgi"
                                 )
                               )
                            )
#                           )
scgi.server      = (
                 "/RPC2" =>
                  ( "127.0.0.1" =>
                    (
                      "socket" => "/var/tmp/rtorrent_rpc.socket",
                      "check-local" => "disable",
                      "disable-time" => 0,  # don't disable scgi if connection fails
                    )
                  )
              )


auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/usr/local/www/data/rtorrent/rtorrent_users"
auth.require = ( "/RPC2" =>
 (
  "method" => "basic",
  "realm" => "XML-RPC",
  "require" => "valid-user"
 )
)

браузер говорит:

Код: Выделить всё

«http://192.168.1.158:81» запрашивает имя пользователя и пароль. Сайт говорит: «XML-RPC»

Re: статья про rtorrent и вебморду

Добавлено: 2009-04-28 0:06:53
FenX
sharky1984 писал(а):FenX спасибо тебе большое. Рторрент стартует а когда набираю в браузере показывает по середине "Загрузка" и все
это из-за того, что апач не может подконнектиЦо по scgi к рторренту.
я же писал:
/home/<username>/.rtorrent.rc

Код: Выделить всё

scgi_port = localhost:5000