Auto Remove Torrents:自动删种程序部署
autoremove-torrents是一个用Python3写的自动删除种子的程序,目前支持qBittorrent/Transmission/μTorrent客户端。
经常挂PT的可能都常遇到这种问题:服务器硬盘又不够用了!这时候,我们就可以用这个autoremove-torrents来帮助我们自动删除那些不想要的种子和数据,autoremove-torrents可以根据你编写的删除条件来执行各种删除操作。
除此之外,将autoremove-torrents/qBittorrent/FlexGet这三款工具整合一下,你可以搭建出一个完全自动化的刷PT盒子。即自动下载种子/自动做种/自动删种。当然这个一条龙服务不在今天的讨论范围内。。。
这篇文章详细写一下CentOS7下部署autoremove-torrents。
因为autoremove-torrents需要Python3的支持,而CentOS7默认的Python还是2.7.5,所以我们第一件事就是想办法把Python版本升级,但升级CentOS7默认的Python并不是一件容易的事情,你会发现即便你升级成功了,也可能会出现各种各样的玄学问题,甚至有时候还会导致yum不能正常使用。
综合上述所说,这里我给大家推荐一个Python版本管理神器:pyenv,其实这玩意之前部署某SS面板的时候就介绍过。
使用pyenv你可以轻松在CentOS7系统内部署多个Python版本,并且可以无缝切换,你还可以把任意Python版本设置为系统全局使用。废话就不多说了,我们先把pyenv安装一下:
cd
yum -y install git
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
一般情况下,会回显给你如下图类似的提示(如果没有就说明你已经安装好了,可以忽略):
此时,编辑账户配置文件:
vi ~/.bash_profile
比如我之前上图中的内容是这些(这些内容可能每台机器都不一样):
export PATH="/root/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
就把这些内容复制粘贴到.bash_profile文件内:
然后使其生效:
source ~/.bash_profile
这样永久的环境变量就设置好了,如果你只是临时需要的话,可以直接在当前shell中执行这三条命令,但断开ssh后就会失效。
接着我们来安装Python所需要的依赖:
yum -y install gcc make zlib zlib-devel readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs
注意,如果你安装Python3.7则需要额外装一个依赖,否则无法安装成功:
yum -y install libffi-devel
然后就可以使用pyenv来安装Python了,先来查看一下当前的Python最新版本号:
pyenv install -l
如图所示,3.7.0是目前的稳定版本:
那么我们就直接安装这个版本(这个安装过程略长,取决于你机器的性能,耐心等待):
pyenv install 3.7.0
如果安装成功,那么执行命令:
pyenv versions
如图所示可以看到当前系统内会多出一个3.7.0版本的Python:
然后我们执行如下命令,将3.7.0版本的Python设置为全局使用:
pyenv global 3.7.0
这样系统就完美的把Python版本升级(切换)到了Python3,如图所示:
现在我们就可以用一条命令来安装autoremove-torrents了:
pip install autoremove-torrents
将安装好的程序复制到/usr/bin/:
cp /root/.pyenv/versions/3.7.0/bin/autoremove-torrents /usr/bin/autoremove-torrents
接着编写autoremove-torrents的配置文件:
vi config.yml
这里我给出一个我自己用的:
my_task:
client: qbittorrent
host: http://127.0.0.1:23333
username: admin
password: adminadmin
strategies:
strategy1:
all_categories: true
seeding_time: 10800
delete_data: true
配置文件需要按照YAML格式来编写,更具体的参考这里:
https://github.com/jerrymakesjelly/autoremove-torrents/wiki/%E4%B8%BB%E9%A1%B5#%E5%A6%82%E4%BD%95%E7%BC%96%E5%86%99%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6
现在你可以在你的BT客户端内下载几个种子用于测试,等待种子删除条件满足后,执行命令:
autoremove-torrents
如下图所示,可以看到我这边执行后满足条件的种子就被删除了(包括种子下载的数据):
确定程序可以正常工作后,添加计划任务:
crontab -e
写入:
*/15 * * * * /usr/bin/autoremove-torrents --conf=/root/config.yml
注:执行时间可以根据自己的需要来更改。
最后重启crond服务:
systemctl restart crond.service
至此,autoremove-torrents的部署就全部完成了。
- 语义化HTML:i、b、em和strong标签
- JSON入门指南--服务端处理JSON
- 纸上谈兵: 图 (graph)
- 纸上谈兵: 拓扑排序
- MyBatis Generator自动创建代码
- Maven(六)之依赖管理
- 细说log4j
- SEVERE: Error configuring application listener of class org.springframework.web.context.ContextLoade
- TCP/IP(一)之开启计算机网络之路
- JSON入门指南--客户端处理JSON
- mysql5.7 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- TCP/IP中你不得不知的十大秘密
- Java Web开发学习之路2012版
- TortoiseSVN客户端使用的2个配置问题
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 谷歌浏览器一些https打不开点击高级不行的解决办法
- CV入门赛最全思路&上分技巧汇总!
- VBA专题10-5:使用VBA操控Excel界面之隐藏/取消隐藏及最小化功能区
- 从一道面试题说起:GET 请求能传图片吗?
- ModuleNotFoundError: No module named ‘pip‘【已解决】
- 【原创】Java并发编程系列31 | 阻塞队列(上)
- 【2019-3-3】Mac启动redis
- awvs(acunetix)使用一段时间后突然不能用了-解决方案
- Java自动化测试(数据库断言 18)
- Java自动化测试(参数化 19)
- Python 基础(一):入门必备知识
- Mac安装软件提示 已损坏【已解决】
- 机器学习之sklearn基础教程!
- 2020最新版 maven for MAC 安装及配置
- jemter安装(win/mac)并快捷启动的方法