Add rtorrent-init.d and rtorrent.rc

This commit is contained in:
David Bartley 2008-06-22 20:52:20 -04:00
parent f6241a5ffb
commit 47f3813ec1
2 changed files with 156 additions and 0 deletions

56
rtorrent-init.d Executable file
View File

@ -0,0 +1,56 @@
#!/bin/sh
. /lib/lsb/init-functions
PATH=$PATH:/bin:/usr/bin:/sbin:/usr/sbin
NAME=rtorrent
PIDFILE=/var/run/$NAME.screen
CHUSER=$NAME
DAEMON=/usr/bin/rtorrent
DAEMON_ARGS="-n -o try_import=/etc/rtorrent.rc"
do_start()
{
if [ -s $PIDFILE ] && kill -0 $(cat $PIDFILE) >/dev/null 2>&1; then
exit 0
fi
log_daemon_msg "Starting" $NAME
start-stop-daemon --start --quiet --background --pidfile $PIDFILE \
--make-pidfile --exec /bin/su -- \
$CHUSER -c "/usr/bin/screen -D -m -- $DAEMON $DAEMON_ARGS"
log_end_msg 0
}
do_stop()
{
log_daemon_msg "Stopping" $NAME
start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo
log_end_msg 0
}
do_status()
{
if [ -s $PIDFILE ] && kill -0 $(cat $PIDFILE) >/dev/null 2>&1; then
exit 0
else
exit 4
fi
}
case "$1" in
start)
do_start
;;
stop)
do_stop
;;
restart)
do_stop
sleep 4
do_start
;;
status)
do_status
esac
exit 0

100
rtorrent.rc Normal file
View File

@ -0,0 +1,100 @@
# 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.
# Maximum and minimum number of peers to connect to per torrent.
#min_peers = 40
#max_peers = 100
# Same as above but for seeding completed torrents (-1 = same as downloading)
#min_peers_seed = 10
#max_peers_seed = 50
# Maximum number of simultanious uploads per torrent.
#max_uploads = 15
# Global upload and download rate in KiB. "0" for unlimited.
#download_rate = 0
#upload_rate = 0
# Default directory to save the downloaded torrents.
directory = /www/files
# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
session = /var/lib/rtorrent/session
# Watch a directory for new torrents, and stop those that have been
# deleted.
schedule = watch_www_directory,1,5,load_start=/www/files/*.torrent
schedule = untied_directory,5,5,remove_untied=
# Close torrents when diskspace is low.
#schedule = low_diskspace,5,60,close_low_diskspace=100M
# 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
# The ip address reported to the tracker.
#ip = 127.0.0.1
#ip = rakshasa.no
# The ip address the listening socket and outgoing connections is
# bound to.
bind = mirror
# Port range to use for listening.
port_range = 6900-6999
# 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
encryption = allow_incoming,prefer_plaintext
#
# 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 = <no default>
# 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"