更多相关内容...>>VPS上用debian装transmission教程
VPS上用debian装transmission教程
1. 前言:
u3uOAY http://blog.numino.net/
原来都是在Centos上装Transmission挂PT的,这两天在折腾我的VPS,分别试着在Centos和Debian上安装了rtorrent+rutorrent,结果发现rtorrent和transmission相比,并不是很稳定,经常崩溃,虽然可以写脚本定时检查重启,但每次重启都会重新hash文件,问题多多,所以个人以为还是transmission比较合适个人安装使用,之所以rtorrent很多seedbox在用,主要是它比较容易支持多用户,适合多人共享。最终决定还是装回transmission,因为reload的OS是debian,所以也不准备换成centos,于是就有了这篇教程。
pNcITL http://blog.numino.net/
2.升级系统
XXIIk9 http://blog.numino.net/
我这里reload的是debian-5.0x86的,不同的版本有可能出现的错误不一样,有问题可以跟贴问,为了方便,我这里都是用root登录安装的
UmfGoj http://blog.numino.net/
首先升级系统:apt-get update
Grp7yB http://blog.numino.net/
apt-get upgrade
SMUuEl http://blog.numino.net/
复制代码结果第一条命令就有错误:GPG error: http://ftp.de.debian.org lenny/updates Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
wXPSeW http://blog.numino.net/
复制代码你不能忽略这这个,不然下面安装必要库文件的时候会有些库装不上,要解决这个错误,输入下面命令apt-get install debian-archive-keyring
WpMRE6 http://blog.numino.net/
复制代码然后重新输入上面两条命令,这次就没有错误了,你需要等几分钟等这个过程结束,这取决于你的VPS
rnJ2t0 http://blog.numino.net/
3.安装Transmission
ByYxtF http://blog.numino.net/
先安装必要的库文件这个可以在transmission的网站找到,所以很简单,直接输入apt-get install build-essential automake make autoconf libtool pkg-config libcurl4-openssl-dev intltool libxml2-dev libgtk2.0-dev libnotify-dev libglib2.0-dev libevent-dev
meacdt http://blog.numino.net/
复制代码下载transmission,我这里下的是2.13,并不是最新版,因为最新的版本不在我常去PT的允许客户端列表里,你安装的时候也可以看看你所混的PT的FAQ,然后下载合适的版本,不然被Ban了不要怪我wget http://download.m0k.org/transmission/files/transmission-2.13.tar.bz2
Vat8dX http://blog.numino.net/
tar xvjf transmission-2.13.tar.bz2
Ab894H http://blog.numino.net/
cd transmission-2.13
vy0Eso http://blog.numino.net/
./configure
L5O7Zg http://blog.numino.net/
复制代码在./configure那一步出现错误:configure: error: libevent 1.4.9 or higher not found!
2w2Uan http://blog.numino.net/
复制代码因此下载安装所需要的libevent版本:wget http://ftp.us.debian.org/debian/pool/main/libe/libevent/libevent-1.4-2_1.4.13-stable-1_i386.deb
0qEO6M http://blog.numino.net/
wget http://ftp.us.debian.org/debian/pool/main/libe/libevent/libevent-core-1.4-2_1.4.13-stable-1_i386.deb
PuNDhL http://blog.numino.net/
wget http://ftp.us.debian.org/debian/pool/main/libe/libevent/libevent-extra-1.4-2_1.4.13-stable-1_i386.deb
qI49v6 http://blog.numino.net/
wget http://ftp.us.debian.org/debian/pool/main/libe/libevent/libevent-dev_1.4.13-stable-1_i386.deb
nEkC8R http://blog.numino.net/
dpkg -i *.deb
panDAa http://blog.numino.net/
复制代码然后继续./configure
Aixasd http://blog.numino.net/
make
DPc4A6 http://blog.numino.net/
make install
q9bCt3 http://blog.numino.net/
复制代码
8i16H0 http://blog.numino.net/
4.安装Transmission的启动,停止脚本
lHaU2c http://blog.numino.net/
脚本在transmission网站有现成的,为了方便起见,我还是把它放在这里
KD9936 http://blog.numino.net/
#! /bin/sh
2Wcl2M http://blog.numino.net/
### BEGIN INIT INFO
4S3Bxd http://blog.numino.net/
# Provides: transmission-daemon
sgOkry http://blog.numino.net/
# Required-Start: networking
40O0Y9 http://blog.numino.net/
# Required-Stop: networking
eyVi6L http://blog.numino.net/
# Default-Start: 2 3 5
Jm6Pv0 http://blog.numino.net/
# Default-Stop: 0 1 6
fMi983 http://blog.numino.net/
# Short-Description: Start the transmission BitTorrent daemon client.
uO5W4p http://blog.numino.net/
### END INIT INFO
pcbF9Y http://blog.numino.net/
# Original Author: Lennart A. JÃŒtte, based on Rob Howell's script
2ZqgYf http://blog.numino.net/
# Modified by Maarten Van Coile & others (on IRC)
wak4sT http://blog.numino.net/
# Do NOT "set -e"
TdTCXP http://blog.numino.net/
#
G7Z0Xm http://blog.numino.net/
# ----- CONFIGURATION -----
D50pgY http://blog.numino.net/
#
BWvemw http://blog.numino.net/
# For the default location Transmission uses, visit:
6MIPaY http://blog.numino.net/
# http://trac.transmissionbt.com/wiki/ConfigFiles
dovv28 http://blog.numino.net/
# For a guide on how set the preferences, visit:
RKAIkF http://blog.numino.net/
# http://trac.transmissionbt.com/wiki/EditConfigFiles
ODA19N http://blog.numino.net/
# For the available environement variables, visit:
GxsF6z http://blog.numino.net/
# http://trac.transmissionbt.com/wiki/EnvironmentVariables
8HyF67 http://blog.numino.net/
#
Rsj2MP http://blog.numino.net/
# The name of the user that should run Transmission.
vipZKl http://blog.numino.net/
# It's RECOMENDED to run Transmission in it's own user,
vb73qj http://blog.numino.net/
# by default, this is set to 'transmission'.
jA1p8F http://blog.numino.net/
# For the sake of security you shouldn't set a password
oy0s1f http://blog.numino.net/
# on this user
2E1Txt http://blog.numino.net/
USERNAME=transmission
xA04lh http://blog.numino.net/
# ----- *ADVANCED* CONFIGURATION -----
AG4ncD http://blog.numino.net/
# Only change these options if you know what you are doing!
Ej0S03 http://blog.numino.net/
#
b7PLUP http://blog.numino.net/
# The folder where Transmission stores the config & web files.
8BhH9z http://blog.numino.net/
# ONLY change this you have it at a non-default location
4LZNui http://blog.numino.net/
#TRANSMISSION_HOME="/var/config/transmission-daemon"
D1zqJf http://blog.numino.net/
#TRANSMISSION_WEB_HOME="/usr/share/transmission/web"
rGUF4J http://blog.numino.net/
#
6Sov23 http://blog.numino.net/
# The arguments passed on to transmission-daemon.
3S2zn2 http://blog.numino.net/
# ONLY change this you need to, otherwise use the
6361yG http://blog.numino.net/
# settings file as per above.
D8SCX4 http://blog.numino.net/
#TRANSMISSION_ARGS=""
5DaRC5 http://blog.numino.net/
# ----- END OF CONFIGURATION -----
1Vn1Rq http://blog.numino.net/
#
L94u0K http://blog.numino.net/
# PATH should only include /usr/* if it runs after the mountnfs.sh script.
ltYg5z http://blog.numino.net/
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
kvtXi4 http://blog.numino.net/
DESC="bittorrent client"
605oXe http://blog.numino.net/
NAME=transmission-daemon
MtR3o6 http://blog.numino.net/
DAEMON=$(which $NAME)
o5gZjd http://blog.numino.net/
PIDFILE=/var/run/$NAME.pid
E3s942 http://blog.numino.net/
SCRIPTNAME=/etc/init.d/$NAME
LGyyTp http://blog.numino.net/
# Exit if the package is not installed
yR0MWh http://blog.numino.net/
[ -x "$DAEMON" ] || exit 0
n74ps6 http://blog.numino.net/
# Read configuration variable file if it is present
zBR86d http://blog.numino.net/
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
oTLkpm http://blog.numino.net/
# Load the VERBOSE setting and other rcS variables
M6B1ea http://blog.numino.net/
[ -f /etc/default/rcS ] && . /etc/default/rcS
MxKWZ0 http://blog.numino.net/
#
170D82 http://blog.numino.net/
# Function that starts the daemon/service
4I0YB1 http://blog.numino.net/
#
603f2w http://blog.numino.net/
do_start()
RuNkmj http://blog.numino.net/
{
jgP2ZZ http://blog.numino.net/
# Export the configuration/web directory, if set
4J3xKJ http://blog.numino.net/
if [ -n "$TRANSMISSION_HOME" ]; then
8MrP5q http://blog.numino.net/
export TRANSMISSION_HOME
1Dn302 http://blog.numino.net/
fi
6JUE5r http://blog.numino.net/
if [ -n "$TRANSMISSION_WEB_HOME" ]; then
bTmxXT http://blog.numino.net/
export TRANSMISSION_WEB_HOME
uFLT9i http://blog.numino.net/
fi
U5LJB2 http://blog.numino.net/
# Return
364gZx http://blog.numino.net/
# 0 if daemon has been started
uNaquG http://blog.numino.net/
# 1 if daemon was already running
x0oWm1 http://blog.numino.net/
# 2 if daemon could not be started
YdDZUT http://blog.numino.net/
start-stop-daemon --chuid $USERNAME --start --pidfile $PIDFILE --make-pidfile \
KCOGhp http://blog.numino.net/
--exec $DAEMON --background --test -- -f $TRANSMISSION_ARGS > /dev/null \
2d0Pzl http://blog.numino.net/
|| return 1
0FFf55 http://blog.numino.net/
start-stop-daemon --chuid $USERNAME --start --pidfile $PIDFILE --make-pidfile \
0ISHq4 http://blog.numino.net/
--exec $DAEMON --background -- -f $TRANSMISSION_ARGS \
UCHGPN http://blog.numino.net/
|| return 2
37vHnJ http://blog.numino.net/
}
y8oVk3 http://blog.numino.net/
#
D0Xx9q http://blog.numino.net/
# Function that stops the daemon/service
3HbE15 http://blog.numino.net/
#
t7fSbR http://blog.numino.net/
do_stop()
755i8e http://blog.numino.net/
{
YMkr7K http://blog.numino.net/
# Return
L6x4j8 http://blog.numino.net/
# 0 if daemon has been stopped
x6FMzP http://blog.numino.net/
# 1 if daemon was already stopped
84wF4a http://blog.numino.net/
# 2 if daemon could not be stopped
LnRG36 http://blog.numino.net/
# other if a failure occurred
a86y0J http://blog.numino.net/
start-stop-daemon --stop --quiet --retry=TERM/10/KILL/5 --pidfile $PIDFILE --name $NAME
Z377p8 http://blog.numino.net/
RETVAL="$?"
C0x9C1 http://blog.numino.net/
[ "$RETVAL" = 2 ] && return 2
1GQgz4 http://blog.numino.net/
# Wait for children to finish too if this is a daemon that forks
J74kd7 http://blog.numino.net/
# and if the daemon is only ever run from this initscript.
U6Wyj0 http://blog.numino.net/
# If the above conditions are not satisfied then add some other code
lp2nDo http://blog.numino.net/
# that waits for the process to drop all resources that could be
Lg45QM http://blog.numino.net/
# needed by services started subsequently. A last resort is to
K3QtaV http://blog.numino.net/
# sleep for some time.
j3mNXv http://blog.numino.net/
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
Gkmh6r http://blog.numino.net/
[ "$?" = 2 ] && return 2
HT0hKQ http://blog.numino.net/
# Many daemons don't delete their pidfiles when they exit.
s9zFNi http://blog.numino.net/
rm -f $PIDFILE
0IaIox http://blog.numino.net/
return "$RETVAL"
Jp6jt1 http://blog.numino.net/
}
B5O8gQ http://blog.numino.net/
case "$1" in
hdhrLt http://blog.numino.net/
start)
bZb0KZ http://blog.numino.net/
echo "Starting $DESC" "$NAME..."
UO19tc http://blog.numino.net/
do_start
G3Nao2 http://blog.numino.net/
case "$?" in
vcvq4q http://blog.numino.net/
0|1) echo " Starting $DESC $NAME succeeded" ;;
9Fs1Xg http://blog.numino.net/
*) echo " Starting $DESC $NAME failed" ;;
9uxDO4 http://blog.numino.net/
esac
V42i27 http://blog.numino.net/
;;
67F7J9 http://blog.numino.net/
stop)
RXxou9 http://blog.numino.net/
echo "Stopping $DESC $NAME..."
J8HZ8P http://blog.numino.net/
do_stop
aOj1aA http://blog.numino.net/
case "$?" in
Uuzqe6 http://blog.numino.net/
0|1) echo " Stopping $DESC $NAME succeeded" ;;
Jaf2Vq http://blog.numino.net/
*) echo " Stopping $DESC $NAME failed" ;;
zWy7xf http://blog.numino.net/
esac
Zvx419 http://blog.numino.net/
;;
5ERoIs http://blog.numino.net/
restart|force-reload)
lxvePv http://blog.numino.net/
#
mB4pz5 http://blog.numino.net/
# If the "reload" option is implemented then remove the
Gwrr9O http://blog.numino.net/
# 'force-reload' alias
9dYT5P http://blog.numino.net/
#
bCqSu5 http://blog.numino.net/
echo "Restarting $DESC $NAME..."
1EKb0K http://blog.numino.net/
do_stop
l1Hu0E http://blog.numino.net/
case "$?" in
l9sjvm http://blog.numino.net/
0|1)
xA4aLv http://blog.numino.net/
do_start
1AF88F http://blog.numino.net/
case "$?" in
4sMrQZ http://blog.numino.net/
0|1) echo " Restarting $DESC $NAME succeeded" ;;
KSW59t http://blog.numino.net/
*) echo " Restarting $DESC $NAME failed: couldn't start $NAME" ;;
x4sQm1 http://blog.numino.net/
esac
nZdI8f http://blog.numino.net/
;;
5IOjo5 http://blog.numino.net/
*)
im351p http://blog.numino.net/
echo " Restarting $DESC $NAME failed: couldn't stop $NAME" ;;
9kGyt1 http://blog.numino.net/
esac
mY0GWS http://blog.numino.net/
;;
uJuiY3 http://blog.numino.net/
*)
UPpyCY http://blog.numino.net/
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
JgKlwE http://blog.numino.net/
exit 3
D1Jo3c http://blog.numino.net/
;;
ssY7A0 http://blog.numino.net/
esac
Dfl5AA http://blog.numino.net/
复制代码这个脚本文件需要作为transmission-daemon放在/etc/init.d/下面,输入以下命令:
KtmhGR http://blog.numino.net/
vi /etc/init.d/transmission-daemon
dl3Q4s http://blog.numino.net/
复制代码按i,然后把上面这个脚本粘帖进去,按ESC,然后按冒号:,输入wq,按回车,文件就建立好了
7r014p http://blog.numino.net/
接下来更改文件的权限并使它在启动的时候可以自动执行:
M2KDP6 http://blog.numino.net/
chmod +x /etc/init.d/transmission-daemon
UkGbiW http://blog.numino.net/
chown root:root /etc/init.d/transmission-daemon
5ZOQe3 http://blog.numino.net/
update-rc.d transmission-daemon defaults
0Tt7mo http://blog.numino.net/
复制代码下来新建一个用户运行transmission,这里用的用户名是transmission,当然你也可以用其他的,不过记得要更改脚本了的USERNAME与之对应
G6E8sd http://blog.numino.net/
useradd -mr transmission
zOwCs5 http://blog.numino.net/
chmod g+rwx /home/transmission/
2eo8DC http://blog.numino.net/
复制代码
1J7mjE http://blog.numino.net/
建立transmission的下载目录并设定权限:
GWy7oL http://blog.numino.net/
mkdir -p /home/transmission/Downloads/
p6DI30 http://blog.numino.net/
chown -R transmission.transmission /home/transmission/Downloads/
MHYj3q http://blog.numino.net/
chmod g+w /home/transmission/Downloads/
jhzl4j http://blog.numino.net/
复制代码接下来就可以启动transmission了:
XV53PW http://blog.numino.net/
/etc/init.d/transmission-daemon start
JW8j3y http://blog.numino.net/
复制代码
zJbT1O http://blog.numino.net/
transmission启动后就自动会在/home/transmission/.config/transmission-daemon下生成settings.json文件,不过在你更改设置之前必须先停止transmission:
R2zf9P http://blog.numino.net/
/etc/init.d/transmission-daemon stop
JZfL8N http://blog.numino.net/
复制代码这样你就可以开始更改设置了:
atTn8O http://blog.numino.net/
vi /home/transmission/.config/transmission-daemon/settings.json
Z8NpOH http://blog.numino.net/
复制代码按i以后就可以开始编辑了,至于参数什么意思请参考transmission的网站,改完后按ESC, 按冒号:,输入wq回车存盘
YI0f7F http://blog.numino.net/
为了方便你在家里的电脑上用Transmission Remote GUI的连上去管理,下面的设置你必须更改:
1iF88C http://blog.numino.net/
"rpc-whitelist-enabled": false - 默认是true,要改为false
extboB http://blog.numino.net/
“rpc-password": "密码",
SllQu7 http://blog.numino.net/
"rpc-username": "用户名",
3xfwwg http://blog.numino.net/
上面的密码和用户名你可以自己指定
KNGPJ4 http://blog.numino.net/
复制代码
yDJUns http://blog.numino.net/
从新启动transmission,新的设置就会生效:
LB9Lvp http://blog.numino.net/
/etc/init.d/transmission-daemon start
zgX1pG http://blog.numino.net/
复制代码现在你可以下载并安装Transmission Remote GUI,在GUI的options输入VPS的IP地址,rpc的端口(默认是9091,你可以在settings.json中改成其他的),你的用户名和密码,就可以连到你VPS上的transmission了
eX93Y8 http://blog.numino.net/
Transmission Remote GUI的下载地址:
Re7xn9 http://blog.numino.net/
http://transmisson-remote-gui.googlecode.com/files/transgui-2.2-setup.exe
e2f3Zc http://blog.numino.net/
复制代码另外如果你用Android的手机,可以在菜市场搜索安装Transdroid,它可以很方便的在手机上管理transmission,也可以在手机上下载torrent,通过它传到vps的transmission里进行下载,非常方便
5Bp9C8 http://blog.numino.net/
至此transmission在debian的安装就告一段落了,下来有时间我会写一下如何通过rss和irc自动下载torrent并传给transmission进行下载
更多相关内容...>>VPS上用debian装transmission教程

Bug报告 |  免责声明 |  联系我们 |  加入收藏

Copyright © 2006 NuminoStudio(www.numino.net) All Rights Reserved