归档文章 (2011-2017)

date
2011/10/30
rTorren 是一款非常简洁优秀的BT客户端,它完全基于文本并可以在Linux终端中运行。 ruTorrent 是基于PHP的一个rTorrent前端,提供图形化的界面来管理 rTorrent。

一、编译安装 libtorrent

1.1 安装编译工具

yum -y install gcc-c++ libtool yum -y install libsigc++20 libsigc++20-devel

1.2 下载、编译、安装

wget http://libtorrent.rakshasa.no/downloads/libtorrent-0.12.9.tar.gz tar -zxf libtorrent-0.12.9.tar.gz cd libtorrent-0.12.9 ./configure make && make install

二、编译安装 rtorrent

2.1 安装依赖的软件包

yum -y install gcc-c++ libtool yum -y install libsigc++20 libsigc++20-devel

2.2 配置环境变量

注:如果不先做这步,可能出现无法找到 libtorrent.so.5 等错误。
echo "/usr/local/lib/" >> /etc/ld.so.conf ldconfig export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

2.3 安装 xmlrpc

如果你想直接通过web界面管理rtorrent,则此步不能省。rtorrent 0.7.5 以后的版本web gui是通过xmlrpc来驱动。
yum -y install xmlrpc-c-devel

2.4 编译安装 rtorrent

wget http://libtorrent.rakshasa.no/downloads/rtorrent-0.8.9.tar.gz tar -zxf rtorrent-0.8.9.tar.gz cd rtorrent-0.8.9 ./configure --with-xmlrpc-c make && make install

三、rTorrent 使用方法

3.1 rtorrent 后台启动脚本

该脚本用于管理rtorrent,包括启动、停止、重启操作,脚本内容见下面链接。
https://gist.github.com/1326099
注:若不想以root身份运行该脚本,请修改替换rtorrent.sh中的root字符。
wget https://wangyan.org/download/shell/rtorrent.sh mv rtorrent.sh /etc/init.d/rtorrent chmod a+x /etc/init.d/rtorrent

3.2 rtorrent 运行方法

方法一(推荐):使用上述管理脚本
方法二(推荐):通过Screen使用rTorrent,然后通过+A+D挂起、screen -r 恢复,详细快捷键见screen相关文档。
方法三:直接在终端运行,然后通过+Q 退出。详细快捷键见官方文档《RTorrentUserGuide》
/usr/local/bin/rtorrent

3.3 rtorrent 配置

配置 rtorrent 是通过位于/home/username/.rtorrent.rc文件来完成。官方示例配置文件见 rtorrent.rc example
配置文件中文解释见下面链接,我不直接贴代码了,以免浪费文章篇幅。
https://gist.github.com/1325923
注:配置文件里面所指定的目录要保证存在,否则启动rtorrent出错,可通过下面命令创建。
mkdir -p ~/rtorrent/{download, .session, .watch}

四、ruTorrent 安装配置

ruTorrent 是用来可视化管理 rtorrent的,它本身非常简洁,但可通过插件实现非常强大的功能。

4.1 rtorrent xmlrpc-c 配置

安装配置ruTorrent需保证,支持php和xmlrpc-c的Web环境已经配置好,否则出错。web套件可以是 lighttpd、apache、nginx。
xmlrpc-c 配置可参见官方文档 《Using XMLRPC with rtorrent 本文以Nginx为例来说明。
方法一:(官方不推荐)
cat >>~/.rtorrent.rc<<-EOF scgi_port = localhost:5000 EOF
方法二:(官方推荐)
注意:下面三行代码一行都不能少,先后顺序不能变,否则出现 “Could not prepare socket for listening: Address already in use” 错误!
cat >>~/.rtorrent.rc<<-EOF execute_nothrow=rm,/tmp/rpc.socket scgi_local = /tmp/rpc.socket schedule = chmod,0,0,"execute=chmod,777,/tmp/rpc.socket" EOF

4.2 Nginx xmlrpc 配置

修改nginx站点配置文件,在server字段加入下面内容。
location /RPC2 { include scgi_params; #scgi_pass 127.0.0.1:5000; scgi_pass unix:///tmp/rpc.socket; }

4.3 ruTorrent 安装配置

ruTorrent 详细配置可查看官方文档 ruTorrent Configuration
wget http://rutorrent.googlecode.com/files/rutorrent-3.3.tar.gz tar -zxf rutorrent-3.3.tar.gz mv rutorrent /var/www chown -R www-data:www-data /var/www/rutorrent/share/ sed -i 's/\/\/ $scgi/$scgi/g' /var/www/rutorrent/conf/config.php sed -i 's/$scgi_port = 5000/\/\/ $scgi_port = 5000/g' /var/www/rutorrent/conf/config.php sed -i 's/$scgi_host = "127/\/\/ $scgi_host = "127/g' /var/www/rutorrent/conf/config.php

4.4 ruTorrent 访问密码保护

创建密码文件
htpasswd -b -c /var/www/rutorrent/.htpasswds username passwd
修改nginx站点配置文件
location /rtorrent { auth_basic "ruTorrent login"; auth_basic_user_file /var/www/rtorrent/.htpasswds; }

五、结束

安装完成后,通过 http://youdomain/rutorrent 访问,然后输入帐号和密码即可看到以下界面。嗯,欢呼吧!混PT的小水管们。。。
notion imagenotion image
https://img.cdn.wangyan.cloud/r/rutorrent.jpg
参考资料:
If you have any questions, please contact me.