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

  • nandris

    aktív tag

    válasz norb7 #8558 üzenetére

    Tuti az elérési utak nem jók. Ki kellene cserélned a 2db torrent file-t, akkor szerintem megszünnének ezek a gondjaid.
    /opt/etc/init.d/S99 rtorent

    #!/bin/sh

    CONFIG="/opt/etc/rtorrent.conf"
    OPTIONS="-n -o import=${CONFIG}"
    BASE="/opt/etc/samba/Share/torrent"
    SRNAME=rtorrent
    PATH=/opt/bin:/opt/sbin:/usr/bin:/sbin:/bin:/usr/sbin
    NAME=rtorrent
    EXEC=/opt/bin/$NAME
    EXSC=/opt/bin/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
    }

    getprange() {
    ports=`awk '/^[[:space:]]*port_range[[:space:]]*=[[:space:]]*/{print($3)}' "$CONFIG" | sed "s/-/ /"`
    echo $ports
    }

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

    fwopen() {
    DHT_PORT=`getdhtport "$CONFIG"`
    iptables -D INPUT -j DROP
    PORTS=$(seq `getprange "$CONFIG"`)
    for P in $PORTS; do
    iptables -I INPUT -i "$1" -p tcp --syn --dport $P -j ACCEPT
    done
    if [ $DHT_PORT ]; then
    iptables -I INPUT -i "$1" -p tcp --dport $DHT_PORT -j ACCEPT
    fi
    iptables -A INPUT -j DROP
    }

    fwclose() {
    DHT_PORT=`getdhtport "$CONFIG"`
    PORTS=$(seq `getprange "$CONFIG"`)
    for P in $PORTS; do
    iptables -D INPUT -i "$1" -p tcp --syn --dport $P -j ACCEPT
    done
    if [ $DHT_PORT ]; then
    iptables -D INPUT -i "$1" -p tcp --dport $DHT_PORT -j ACCEPT
    fi
    }

    d_start() {
    [ -d "${BASE}" ] && cd "${BASE}"
    fwopen
    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
    }

    d_stop() {
    fwclose
    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 -s INT $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
    }

    checkcnfg

    case "$1" in
    start)
    echo "Starting $NAME"
    d_start
    echo "."
    ;;
    stop)
    echo "Stopping $NAME"
    d_stop
    echo "."
    ;;
    restart|force-reload)
    echo "Restarting $NAME"
    d_stop
    sleep 1
    d_start
    echo "."
    ;;
    *)
    echo "Usage: $0 {start|stop|restart|force-reload}" >&2
    exit 1
    ;;
    esac

    exit 0

    Ez pedig /opt/etc/rtorrent.conf

    # This is an example resource file for rTorrent. Copy to
    # ~/.rtorrent.rc and enable/modify the options as needed. Remember to
    # uncomment the options you wish to enable.
    # Minumum amount of peers to connect per torrent, if available.
    min_peers = 20
    # Minumum amount of peers to connect per torrent.
    max_peers = 40
    # Same as above but for seeding completed torrents (-1 = same as downloading)
    # min_peers_seed = 10
    # max_peers_seed = 20
    # Maximum number of simultanious uploads per torrent.
    max_uploads = 5
    # Global download rate in KiB. “0” for unlimited.
    download_rate = 0
    # Global upload rate in KiB. “0” for unlimited.
    upload_rate = 0
    # Default directory to save downloaded files. Note it doesn’t support
    # space yet.
    directory = /opt/etc/samba/Share/torrent/work/
    # Watch a directory for new torrents, and stop those that have been deleted.
    # schedule = watch_directory,5,5,load_start=/opt/share/torrent/dl/*.torrent
    # schedule = untied_directory,5,5,stop_untied=
    # Close torrents when diskspace is low.
    # schedule = low_diskspace,5,60,close_low_diskspace=100M
    # Default session directory. Make sure you don’t run multiple instance
    # of rtorrent using the same session directory. Perhaps using a
    # relative path?
    session = /opt/etc/samba/Share/torrent/session
    # The ip address reported to the tracker.
    # ip = rakshasa
    # The ip address the listening socket and outgoing connections is
    # bound to.
    # Port range to use for listening.
    port_range = 6880-6880
    # Start opening ports at a random position within the port range.
    # port_random = no
    # Check hash for finished torrents. Might be usefull until the bug is
    # fixed that causes lack of diskspace not to be properly reported.
    check_hash = no
    # Set whetever the client should try to connect to UDP trackers.
    # use_udp_trackers = yes
    # Alternative calls to bind and ip that should handle dynamic ip’s.
    # schedule = ip_tick,0,1800,ip=rakshasa
    # schedule = bind_tick,0,1800,bind=rakshasa
    #
    # Do not modify the following parameters unless you know what you’re doing.
    #
    # Hash read-ahead controls how many MB to request the kernel to read
    # ahead. If the value is too low the disk may not be fully utilized,
    # while if too high the kernel might not be able to keep the read
    # pages in memory thus end up trashing.
    # hash_read_ahead = 10
    # Interval between attempts to check the hash, in milliseconds.
    # hash_interval = 100
    # Number of attempts to check the hash while using the mincore status,
    # before forcing. Overworked systems might need lower values to get a
    # decent hash checking rate.
    # hash_max_tries = 10
    # Max number of files to keep open simultaniously.
    # max_open_files = 128
    # Number of sockets to simultaneously keep open.
    # max_open_sockets =
    # Example of scheduling commands: Switch between two ip’s every 5
    # seconds.
    # schedule = “ip_tick1,5,10,ip=torretta”
    # schedule = “ip_tick2,10,10,ip=lampedusa”
    # Remove a scheduled event.
    # schedule_remove = “ip_tick1”
    # Stop torrents when reaching upload ratio in percent,
    # when also reaching total upload in bytes, or when
    # reaching final upload ratio in percent.
    # example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
    # schedule = ratio,60,60,”stop_on_ratio=200,200M,2000”
    # schedule = ratio,30,60,stop_on_ratio=200
    # Encryption options, set to none (default) or any combination of the following:
    # allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
    #
    # The example value allows incoming encrypted connections, starts unencrypted
    # outgoing connections but retries with encryption if they fail, preferring
    # plaintext to RC4 encryption after the encrypted handshake
    #
    encryption = allow_incoming,enable_retry,prefer_plaintext
    # Enable DHT support for trackerless torrents or when all trackers are down.
    # May be set to “disable” (completely disable DHT), “off” (do not start DHT),
    # “auto” (start and stop DHT as needed), or “on” (start DHT immediately).
    # The default is “off”. For DHT to work, a session directory must be defined.
    #
    # dht = auto
    # UDP port to use for DHT.
    #
    # dht_port = 6881
    # Enable peer exchange (for torrents not marked private)
    #
    # peer_exchange = yes
    scgi_port = 127.0.0.1:5000

    ezek vannak az image file-ban, és tuti működnek.

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