原文地址:http://wangyan.org/blog/rtorrent-and-rutorrent-tutorial.html

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

一、编译安装 libtorrent

1.1 安装编译工具

1.yum -y install gcc-c++ libtool

2.yum -y install libsigc++20 libsigc++20-devel

1.2 下载、编译、安装

1.wget http://libtorrent.rakshasa.no/downloads/libtorrent-0.12.9.tar.gz

2.tar -zxf libtorrent-0.12.9.tar.gz

3.cd libtorrent-0.12.9

4../configure

5.make && make install

二、编译安装 rtorrent

2.1 安装依赖的软件包

1.yum -y install gcc-c++ libtool

2.yum -y install libsigc++20 libsigc++20-devel

2.2 配置环境变量

注:如果不先做这步,可能出现无法找到 libtorrent.so.5 等错误。

1.echo "/usr/local/lib/" >> /etc/ld.so.conf

2.ldconfig

3.export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

2.3 安装 xmlrpc

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

1.yum -y install xmlrpc-c-devel

2.4 编译安装 rtorrent

1.wget http://libtorrent.rakshasa.no/downloads/rtorrent-0.8.9.tar.gz

2.tar -zxf rtorrent-0.8.9.tar.gz

3.cd rtorrent-0.8.9

4../configure --with-xmlrpc-c

5.make && make install

三、rTorrent 使用方法

3.1 rtorrent 后台启动脚本

该脚本用于管理rtorrent,包括启动、停止、重启操作,脚本内容见下面链接。

https://gist.github.com/1326099

注:若不想以root身份运行该脚本,请修改替换rtorrent.sh中的root字符。

1.wget http://wangyan.org/download/shell/rtorrent.sh

2.mv rtorrent.sh /etc/init.d/rtorrent

3.chmod a+x /etc/init.d/rtorrent

3.2 rtorrent 运行方法

方法一(推荐):使用上述管理脚本

方法二(推荐):通过Screen使用rTorrent,然后通过+A+D挂起、screen -r 恢复,详细快捷键见screen相关文档。

方法三:直接在终端运行,然后通过+Q 退出。详细快捷键见官方文档《RTorrentUserGuide》

1./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为例来说明。

方法一:(官方不推荐)

1.cat >>~/.rtorrent.rc<<-EOF

2.scgi_port = localhost:5000

3.EOF

方法二:(官方推荐)

注意:下面三行代码一行都不能少,先后顺序不能变,否则出现 "Could not prepare socket for listening: Address already in
use" 错误!

1.cat >>~/.rtorrent.rc<<-EOF

2.execute_nothrow=rm,/tmp/rpc.socket

3.scgi_local = /tmp/rpc.socket

4.schedule = chmod,0,0,"execute=chmod,777,/tmp/rpc.socket"

5.EOF

4.2 Nginx xmlrpc 配置

修改nginx站点配置文件,在server字段加入下面内容。

1.location /RPC2 {

2.include scgi_params;

3.#scgi_pass 127.0.0.1:5000;

4.scgi_pass unix:///tmp/rpc.socket;

5.}

4.3 ruTorrent 安装配置

ruTorrent 详细配置可查看官方文档《ruTorrent Configuration》

1.wget http://rutorrent.googlecode.com/files/rutorrent-3.3.tar.gz

2.tar -zxf rutorrent-3.3.tar.gz

3.mv rutorrent  /var/www

4.chown -R www-data:www-data  /var/www/rutorrent/share/

5.sed -i 's/\/\/ $scgi/$scgi/g' /var/www/rutorrent/conf/config.php

6.sed -i 's/$scgi_port = 5000/\/\/ $scgi_port =
5000/g'/var/www/rutorrent/conf/config.php

7.sed -i 's/$scgi_host = "127/\/\/ $scgi_host =
"127/g'/var/www/rutorrent/conf/config.php

4.4 ruTorrent 访问密码保护

创建密码文件

1.htpasswd -b -c
/var/www/rutorrent/.htpasswds username passwd

修改nginx站点配置文件

1.location /rtorrent {

2.auth_basic "ruTorrent
login";

3.auth_basic_user_file
/var/www/rtorrent/.htpasswds;

4.}

五、结束

安装完成后,通过 http://youdomain/rutorrent 访问,然后输入帐号和密码即可看到以下界面。嗯,欢呼吧!混PT的小水管们。。。

参考资料:

1. http://libtorrent.rakshasa.no/wiki
2. https://wiki.archlinux.org/index.php/RTorrent
3. http://blog.45639.com/post-27.html
4. http://snowwolf725.blogspot.com/...

rTorrent + ruTorrent 安装和配置的更多相关文章

  1. JDK安装与配置

    JDK安装与配置 一.下载 JDK是ORACLE提供免费下载使用的,官网地址:https://www.oracle.com/index.html 一般选择Java SE版本即可,企业版的选择Java ...

  2. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  3. 烂泥:redis3.2.3安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前一段时间写过一篇codis集群的文章,写那篇文章主要是因为当时的项目不支持redis自 ...

  4. mysql源码包手动安装、配置以及测试(亲测可行)

    笔记编者:小波/qq463431476博客首页:http://www.cnblogs.com/xiaobo-Linux/ 记下这篇mysql笔记,望日后有用! redhat6采用centos yum源 ...

  5. 环境搭建系列-系统安装之centos 6.5安装与配置

    按照国际惯例,系列目录先奉上: 系列一:系统安装之centos 6.5安装与配置 系列二:准备工作之Java环境安装 系列三:数据为先之MySQL读写集群搭建 系列四:谈分布式之RabbitMQ集群搭 ...

  6. ZooKeeper安装与配置

    一. 单机安装.配置: 1. 下载zookeeper二进制安装包下载地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3 ...

  7. mac 下JDK 与 tomcat 的安装与配置

    一.Mac下JDK的安装 1.先检测Mac是否已经安装过JDK,在终端中输入java 或者 javac 显示说明,表明已经安装过JDK,JDK版本查询终端键入java -version,终端会返回JD ...

  8. 烂泥:zabbix3.0安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 这个月又快过完了,最近也比较忙,没时间写文章,今天挤点时间把zabbix3.0安装与配置 ...

  9. Jenkins入门系列之——02第二章 Jenkins安装与配置

    2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...

随机推荐

  1. poj2049

    优先队列广搜,有人说用SPFA,不知道怎么做的 #include <cstdio> #include <queue> #include <cmath> #inclu ...

  2. [原创]Python/Django使用富文本编辑器XHeditor上传本地图片

    前言 为了在Django框架下使用Xheditor上传图片,居然折腾了我一个晚上.期间也遇到种种问题,网上相关资料极少.现在把经验分享给大家. 正文 xheditor篇 1.下载http://xhed ...

  3. java 内部类 工厂方法

    用内部类实现工厂模式 :优先使用类而不是接口,如果你的设计中需要某个接口,你必须了解它,否则不到迫不得已,不要将其放到你的类中 //: innerclasses/Factories.java impo ...

  4. 标签流 VS 脚本流

    搞过点前端,玩过几个框架之后,基本都会发现框架在设计上的一些套路和流派,今天给大家扒一扒其中的两个书写流派“标签流”和“脚本流” 我们以一个button按钮为例: 这样裸写HTML标签的方式基本没法儿 ...

  5. mysql多表查询,group by并将结果导出来csv文件

    SQL手动操作得少,遇到一个CASE,就记录一个CASE吧. 今天遇到的是统计一个发布结果. 这个发布表中,有两个字段是外键,并且要求按其中一个外键,作group by操作, 最后,导出来excel能 ...

  6. mavean项目的jar位置的影响

    由于项目的数据库需求改变了,有mysql数据库变为oracle的,那么对于项目就是需要改变数据库连接池.这个项目运用了mavean框架,那么下载jar在pom.xml文件中填写就可以了,但是oracl ...

  7. PLSQL Developer 中文显示乱码的解决方法

    PLSQL Developer 中文显示乱码是因为 Oracle 数据库所用的编码和 PLSQL Developer 所用的编码不同所导致的. 解决方法: 1. 先查询 Oracle 所用的编码 se ...

  8. 003.NTP客户端配置

    一 NTP客户端同步方式 ntpdate定时任务同步 ntp服务同步 二 ntpdate定时任务同步 2.1 安装ntp软件 [root@client ~]# yum -y install ntp # ...

  9. ES7/8新特性学习随笔

    随着每年EcmaScript都会为js带来一些新特性,带来更多美化的编程体验,今天就走进一下es2016/2017所带来的新特性 ES7新特性 includes() 指数操作符 ES8新特性 asyn ...

  10. Windows上Nginx的安装教程详解

    一 背景 为了方便本地的开发和验证,于是整理了这一篇Windows上安装Nginx的博文,建议一般学习还是使用Linux,一般正规公司都是在Linux上安装Nginx服务! 本篇内容相对比较简单,如果 ...