rtorrent 的安装、使用
rtorrent 是什么
这是一个 PT 下载工具,和大家熟知的 utorrent、vuze、transmission 属于同类的产品。其优点 / 特点是:
- 被广大国内外 PT 网站所接受,包括馒头、ttg、ipt 等
- 自身仅支持 CLI,即命令行界面,对一些没有图形操作界面的系统比较友好
- 有配套的远程控制指令,也有配套的 GUI,支持直观的用户操作
- 支持程序控制,可以实现一定程度的自动化
不过另一方面 rtorrent 也有自己的弊端,安装较为复杂,目前稳定的 0.9.6 版本不支持后台运行等等……因此考虑使用 rtorrent 之前,请确认这个软件是否适合你。
安装
你可以点击 这里 访问 rtorrent 的 GitHub 项目。在安装介绍页面,对 rtorrent 的安装有一些介绍。
可以通过包管理工具进行安装
apt install rtorrent # Ubuntu & Debian
dnf install rtorrent # Fedora
pacman -S rtorrent # Arch
brew install rtorrent # macOS
你也可以通过 GitHub 下载源码,自行编译
./configure; make; make install
或者通过 docker 进行部署,这里就不做具体介绍了
服务配置
rtorrent 会默认读取位于 ~/.rtorrent.rc
里的配置信息,运行中获取的相关数据会保存在 ~/rtorrent
文件夹下。
rtorrent 提供了配置文件的模板,可以通过以下命令快速获取该模板,并完成基本配置的生成
curl -Ls "https://raw.githubusercontent.com/wiki/rakshasa/rtorrent/CONFIG-Template.md" \| sed -ne "/^######/,/^### END/p" \| sed -re "s:/home/USERNAME:$HOME:" >~/.rtorrent.rc
mkdir -p ~/rtorrent/
有一些常用的配置选项值得关注
# 请修改 ~/.rtorrent.rc 文件中的相关选项# 如果希望开启 xmlrpc 远程控制,或者使用 GUI,请开启这个选项
network.scgi.open_port = 0.0.0.0:4000 # 地址设置为自己想要的地址和端口# 取消下载完成后的强制哈希检查
pieces.hash.on_completion.set = no# 设置下载后文件的读写权限,umask 相关知识请自行了解
system.umask.set = 0027# 设置下载后的单个、最大文件
system.file.max_size.set = 500G
大多数配置例如分享比例设置、上传下载速度限制等等在示例配置文件中均有明确的说明,对其他配置感兴趣的同学也可以自行深入了解一下。
服务的使用
在命令行敲入 rtorrent
即可进入其命令行界面进行使用,但是这个用户操作界面不是很友好,所以我自己都没有仔细研究其操作手册,感兴趣的同学可以自行了解一下 命令行操作手册
在 0.9.7 版本之前,rtorrent 只能够运行在前台,所以为了不影响其他服务的使用,还请使用 tmux 之类的多窗口工具,关于 tmux 的使用,这里不做详细介绍。
tmux
# 进入 tmux 窗口
rtorrent # 在 tmux 窗口执行 rtorrent
在确保 rtorrent 运行的前提下,你可以使用一个 GUI 来使用服务,例如 rutorrent。
我自己使用的 GUI 是 flood,所以这里主要介绍 flood 的配置。
flood 用户界面的安装、配置与使用
开始前请确认:
- 脑上安装了 node,需要版本 8 以上
- rTorrent 已经运行,并且开启了 xmlrpc
# 全局安装 node-gyp
# 如果遇到问题,可以访问 https://www.npmjs.com/package/node-gyp#installation
npm install -g node-gyp
# 请先进入某个合适的路径
# 获取 flood
git clone https://github.com/Flood-UI/flood.git
cd flood
cp config.template.js config.js
# 这里请打开 config.js 把一些你认为需要的配置进行修改
# 进行安装
npm install
npm run build
# 运行
npm start
之后你可以通过 http://localhost:3000 访问 flood,这里会让你创建一个用户 / 密码,请牢记,并且设置 flood 连接的地址、端口为 rtorrent 配置文件中设置的 network.scgi.open_port
。
当然你也可以配置一个服务器进行转发,例如我使用的 nginx 配置文件如下
server {# the port your site will be served onlisten 7678 ssl; # 使用你自己的端口,如果不使用# listen 7678;server_name nginx-flood;# 如果不使用 https,这一部分都可以忽略ssl_certificate /etc/nginx/cert/certificate.crt;ssl_certificate_key /etc/nginx/cert/private.key;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;ssl_ciphers AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;charset utf-8;
location / {proxy_pass http://127.0.0.1:3000; # 这里改为你自己的 flood 服务地址}
}
同样 flood 运行在前台,所以你可以需要另一个 tmux 进程来把 flood 包起来
开机自启动
我这里以 Ubuntu 为例进行说明,我的 配置文件如下
```shell
# /etc/systemd/system/rtorrent.service
[Unit]
Description=rTorrent System Daemon
After=network.target[Service]
Type=forking
User=用户名
Group=用户分组名ExecStart=/usr/bin/tmux -L rt new-session -s rt -n rt -d "/usr/bin/rtorrent -n -o import=/home/deluge/.rtorrent.rc"
ExecStop=/usr/bin/tmux kill-session -t rt[Install]
WantedBy=multi-user.target
同理你也可以为 flood 设置开机自启动,只要修改 ExecStart 这一行的指令即可。
通过接口调用对 rtorrent 控制
rtorrent 提供了 xmlrpc 的服务能力,支持你通过接口调用的方式对 rtorrent 进行控制。
当你在 rtorrent 配置文件中设置了 network.scgi.open_port
后,你还需要设置一个服务器转发,因为这是一个 scgi 接口,不能通过 http 直接访问,我的 nginx 配置文件如下:
server {listen 127.0.0.1:8008; # 记得改为你自己想要的 xmlrpc 指令调用接口server_name ngnix-rtorrent;location /RPC2 {scgi_pass 127.0.0.1:4000; # 记得改为你自己 network.scgi.open_port 的地址include scgi_params;}
}
你可以直接通过 xmlrpc-c 提供的命令行工具来进行 xmlrpc 的使用。
# Ubuntu 上安装 xmlrpc-c
sudo apt install libxmlrpc-c++8-dev# 使用 xmlrpc 控制 rtorrent
## 查看可用的指令
xmlrpc localhost:8008 system.listMethods
或者你可以通过 python 来进行控制
>>> import xmlrpc.client as xc
>>>
>>> sp = xc.ServerProxy('http://localhost:8008')
>>> sp.system.listMethods()
调试完成后,如果你希望对 rtorrent 提供的 xmlrpc 的指令有更多了解,可以参阅 这个文档。
我们以下载一个种子文件为例进行说明。
import xmlrpc.client as xcsp = xc.ServerProxy('http://localhost:8000')
sp.load_start('http://种子文件地址 d.directory.set="下载后的地址" d.custom.set=starttime,时间戳')
# load_start 是获取种子文件后立即开始下载
# d.directory.set 是 rtorrent 提供的另一个参数,设置种子下载后的地址
# d.custom.set=starttime,时间戳 设置种子文件的添加时间
rtorrent 的安装、使用相关推荐
- 在Ubuntu下rtorrent编译安装笔记
为什么80%的码农都做不了架构师?>>> rtorrent是一个Bittorrent软件,基于终端的BT客户端,高性能.低资源,另外有不少人给rtorrent开发了Web GU ...
- android rtorrent 编译,在Ubuntu下rtorrent编译安装笔记
rtorrent是一个Bittorrent软件,基于终端的BT客户端,高性能.低资源,另外有不少人给rtorrent开发了Web GUI来更好的让用户控制管理rtorrent,总而言之在Linux平台 ...
- rTorrent + ruTorrent 安装和配置
原文地址:http://wangyan.org/blog/rtorrent-and-rutorrent-tutorial.html rTorrent 是一款非常简洁优秀的BT客户端,它完全基于文本并可 ...
- ubuntu 15.10 如何下载bt种子文件 rtorrent的安装使用方法
apt-get install aptitude aptitude install rtorrent apt-get install screen cd ~/ && mkdir uni ...
- rtorrent一键安装脚本rtinst指定版本号
https://github.com/arakasi72/rtinst sudo bash -c "$(wget –no-check-certificate -qO - https://ra ...
- rtorrent - 强大的命令行BT客户端
rtorrent - 强大的命令行BT客户端 NOTE - 文中展示的所有示例和指令都已经在Ubuntu 13.04中测试过. 一. 安装 [root@GY-10000 data] ...
- rtorrent命令行使用
如果你不使用torrent命令行客户端是担心它太复杂,那么,请重新考虑下.我相信一旦使用过了基于命令行的BT客户端,你就会离不开它:你可以非常轻松地在你的终端窗口启动和监控进度.在这篇文章中,我们将会 ...
- rtorrent 安装
rTorrent 是可以linux文本模式下的BT下载软件,适合用在没有XWINDOW的环境使用 适合在远程终端下操作 支持 UTF-8,文件不会有乱码 0.8.0 版后支持 DHT 如果嫌编译安装麻 ...
- centos6.3安装rtorrent
centos6.3安装rtorrent需要自己编译安装 1.下载编译时需要的软件 yum install gcc gcc-c++ m4 make automake libtool pkgconfig ...
最新文章
- NTP 时间同步流量使用过大 问题解决
- 怎么学python-初学者如何学习Python?掌握这17个实用小技巧快速入门!
- 零基础python从入门到精通 pdf-PYTHON从入门到精通 PDF 下载
- 【jQuery】选择器
- VC++开发一个简易图片浏览器 - 含目录浏览功能
- 两种重要的图——Snapshot diagram UML diagram
- C#和Java的代码转换工具(开源)CSharpJavaMerger Framework
- html中加入超链接方式的汇总
- 和可被 K 整除的子数组
- 机器学习_决策树_ID3算法_C4.5算法_CART算法及各个算法Python实现
- access 图片存储的格式_Ceph对象存储RGW架构及安装实战
- 采用python语言实现猜数游戏_用python实现猜数游戏
- 2.6 Word2Vec
- 量子位首款周边卫衣上线,给你AI的力量
- http下载大文件测试
- python RGB与LCH互转 算法
- 看完比尔盖茨30年的56条思考,我才理解他为什么能17年斩获世界首富!
- Python3 计算空气质量指数AQI
- 全国计算机等级考试Python二级知识点_1
- 国内如何下载并使用LINE(免费提供apk安装包)
热门文章
- 电商营销如何玩转粉丝运营?教你3种技巧
- 详述Servlet获取form表单数据
- 2022-2027年(新版)中国基因检测行业发展状况及投资前景预测报告
- VUE Mac 项目拷贝后webpack-dev-server:Permission denied 权限问题
- 从零开发短视频电商 UUID的5个版本和缩短长度
- VS2019无法登陆解决办法
- Unity优化篇 - 图片资源优化
- 仿网易新闻APP(三)——标题栏之24小时要闻
- 求1+2+3+...+n的和
- A股回测“孕线”策略 — Python 量化投资实战教程(8)