Hirdetés

Új hozzászólás Aktív témák

  • vargalex

    Topikgazda

    válasz r3pl4y #5202 üzenetére

    Hi!

    Igen, mivel OpenWrt alatt kevesen használnak rTorrent-et, így valóban kihagyták még a config file-t is. Indítófile-nak pedig nem is lenne értelme, mert az rTorrent nem daemon módban fut, hanem screen alatt szokás használni. Egyébként saját tapasztalatom szerint a Transmission mind RAM, mind CPU tekintetében kisebb igényű, mint az rTorrent.
    De, ha mégis használni szeretnéd, legyen ilyen a config file tartalma (/etc/rtorrent.conf file):

    min_peers = 20
    max_peers = 40
    max_uploads = 5
    download_rate = 1280
    upload_rate = 0
    directory = /mnt/torrent/
    session = /mnt/torrent
    port_range = 25000-25000
    check_hash = no
    use_udp_trackers = no
    encryption = allow_incoming,enable_retry,prefer_plaintext
    encoding_list = UTF-8
    scgi_port = 127.0.0.1:5000

    A screen telepítése után létrehozhatod az indító scriptet (/etc/init.d/rtorrent) a következő tartalommal:

    #!/bin/sh /etc/rc.common
    START=94

    CONFIG="/etc/rtorrent.conf"
    OPTIONS="-n -o import=${CONFIG}"
    BASE="/mnt/torrent"
    SRNAME=rtorrent
    NAME=rtorrent
    EXEC=/usr/bin/$NAME
    EXSC=/usr/sbin/screen

    checkcnfg() {
    if ! [ -x $EXSC ]; then
    logger -t $NAME "screen not found."
    return 3
    fi
    exists=0
    for i in `echo "$PATH" | tr ':' '\n'` ; do
    if [ -f $i/$NAME ] ; then
    exists=1
    break
    fi
    done
    if [ $exists -eq 0 ] ; then
    logger -t $NAME "cannot find $NAME binary in PATH $PATH"
    exit 3
    fi
    if ! [ -r "${CONFIG}" ] ; then
    logger -t $NAME "cannot find readable config $CONFIG"
    exit 3
    fi
    session=`getsession "$CONFIG"`
    if ! [ -d "${session}" ] ; then
    logger -t $NAME "cannot find readable session directory $session from config $CONFIG"
    exit 3
    fi
    }

    getsession() {
    session=`awk '/^[[:space:]]*session[[:space:]]*=[[:space:]]*/{print($3)}' "$CONFIG"`
    echo $session
    }

    start() {
    checkcnfg
    [ -d "${BASE}" ] && cd "${BASE}"
    #stty stop undef && stty start undef
    $EXSC -ls | grep ".$SRNAME[[:space:]]" > /dev/null || $EXSC -dm -S $SRNAME
    # without sleep screen may not be sometimes ready to start anything
    sleep 3
    $EXSC -S "$SRNAME" -X screen nice $EXEC $OPTIONS
    for I in 0:3 ; do
    if [ -n "`pidof $NAME`" ]; then
    logger -t $NAME "Started PID: `pidof $NAME`"
    break
    fi
    sleep 1
    done
    }

    stop() {
    session=`getsession "$CONFIG"`
    if ! [ -s ${session}/rtorrent.lock ] ; then
    logger -t $NAME "Lock file failed: ${session}/rtorrent.lock"
    return
    fi
    PID=`cat ${session}/rtorrent.lock | awk -F: '{print($2)}' | sed "s/[^0-9]//g"`
    if ps -A | grep -sq $PID.*rtorrent ; then # make sure the pid doesn't belong to another process
    kill $PID
    logger -t $NAME "Stopped PID: $PID"
    sleep 1
    for I in 0:5 ; do
    PSE=`ps -p $PID | grep "$PID"`
    if [ -z "$PSE" ]; then
    break
    fi
    sleep 1
    done
    fi
    SCSTOP=`$EXSC -list | grep "\.$SRNAME" | awk '{print($1)}' | sed "s/\.$SRNAME//"'`
    if [ -n "$SCSTOP" ]; then
    kill $SCSTOP
    logger -t $NAME "Stopped screen: $SCSTOP"
    fi
    }

    Majd

    /etc/init.d/rtorrent enable
    /etc/init.d/rtorrent start

    A config és az indító script a WL-500gP-n szokásos (optware) file-ok alapján készült.

    [ Szerkesztve ]

    Alex

Új hozzászólás Aktív témák