Press "Enter" to skip to content

Hetzner 部署 qBittorrent、FlexGet 与 Auto Remove Torrents 实现资源自动下载及删除

由于实验室购买了OVH的独服,但是这东西又不能拿来自己用。看着心痒痒,我呢又是从初中开始就非常喜欢搞服务器,但是之前都是玩的VPS,感觉没什么意思,配置不够高,还经常被厂家教育(跑的过快)。于是决定自己购置一台独服用来玩。

在一段时间的货比三家之后,详细的观察和考虑了Kimsufi,Online.net, OVH, Hetzner.

最终还是选择了Hetzner,Hetzner实在是太实惠了,i7 3700 8TB的硬盘,一个月才只要26欧。(SERVER AUCTION 是免部署费用的)

有了服务器之后,考虑到服务器是在德国的,桌面化远程控制的话,可能面临延迟太过于高,或者是丢包。于是选择了直接建立Seedbox,这样我可以直接通过网页来控制,并且还可以构建一系列自动化的操作。

这里使用的下载方案是 qBittorrent+FlexGet+Auto Remove Torrents,FlexGet 使用 PT 站 RSS 链接自动下载种子至服务器并使用 qBittorrent 自动下载,下载完成后根据条件使用 Auto Remove Torrents 自动删除,以实现无需人工干预,自动刷流量。

由于购买的是HDD的硬盘服务器,而且我又是用来刷PT的,这里直接上手组RAID 0。

先在官网的控制台,选择进入救援模式(如果是自己有使用秘钥部署的话,选择自己的秘钥,如果没有的话,官网的控制台在你选择救援模式之后,会给你一个临时密码,用这个密码配合root用户名进入就可以了)。这之后,再选择执行硬重置。

这时你会收到Hetzner的一封邮件告诉你他们已经执行了硬重置。

使用SSH工具,结合自己的秘钥进行登陆就可以了。

这里的话,Hetzner是提供了他们自家内置的脚本的。

我们直接执行

installimage

并且选择自己想要的镜像,这里我选择的是Ubuntu 18 04

选择好镜像之后,找到 SWRAIDLEVEL 这里,我们将他改为 0 (默认为1)

Hetzner 是默认将所有的硬盘组成RAID的,如果说,你买到的服务器,硬盘大小不一样的话,会遇到大部分的容量浪费。

之后我会重新写一篇文章来讲如何把硬盘分开组RAID,并且挂载到系统中。Hetzner Ubuntu 不同硬盘下组建RAID 并配置硬盘自动挂载

磁盘分区用默认的就行,在这里调整下根目录大小,默认是 会给 /ext4 2TB的空间的,多少有点不合理。

这里我们把它修改成

PART swap swap 8G
PART /boot ext3 512M
PART / ext4 all

完事之后,我们按F10 进行保存就好,之后,将会自动安装新系统。在系统完成之后,手动收入命令重启就好了

reboot

在网上搜寻了一番之后,选择了 quickbox-lite 这款脚本部署,主要是图方便,如果一个一个的自己装起来,中间可能要浪费不少时间。

这里跳过安装的部分,大家可以去Github上翻看教程:

https://github.com/amefs/quickbox-lite

主要讲一下,关于qBittorent的优化和FlexGet 与 Auto Remove Torrents的配置。

qBittorrent:

经过我的各种测试,发现qBittorent的连接数限制保持在这个水平是最好的,不管你的机器是SSD还是HDD,都是同样的道理。(为此我专门另开了台SSD)

这里关闭掉队列,实际测试中,并不会因为开起的数量少,速度就会上去。

在这里我同时根据我的CPU核数和线程对I/O 的线程进行了更改。 比如我是4核8线程。

而这里的允许多个链接一定是要开的,不然的话,对方只能单线程连接你的服务器。

FlexGet:

web_server:
  bind: 127.0.0.1
  port: 15361
  web_ui: yes
  base_url: /flexget
templates:
  standard:
    free_space:
      path: /home/
      space: 10240
  qb:
    qbittorrent:
      path: /home/用户名/torrents/qbittorrent/
      host: localhost
      port: 15165 #如果是使用脚本配置的话,他会自动生成相对应的port,如果不是,请根据自己的port进行修改
      username: #你的账号
      password: #你的密码
tasks:
  mt:
    rss: 
      url: https://kp.m-team.cc/torrentrss.php?https=1&rows=20&linktype=dl&passkey=1XXXXXXXXXXXX # 这里记得自己生成链接,是生成之后的第二个链接
    accept_all: yes
    content_size:
      min: 256
      max: 60000
    template: qb
schedules:
  - tasks: [mt]
    interval:
      minutes: 5

auto-remove torrents:

目录的话 还是需要根据你的自身情况进行修改的。


Example2:
  client: qbittorrent
  host: http://127.0.0.1:15165
  username: #你的用户名
  password: #你的密码
  strategies:
    delete_by_restspace:
      free_space:
        min: 400                                               # size in GiB
        path: /home/${username}/torrents/qbittorrent/          # This Path MUST EXIST
        action: remove-inactive-seeds
    ddl:
        remove: (size < 50 and seeding_time > 44200 and upload_speed < 100) or (size < 300 and seeding_time > 475200)
  delete_data: true

这里的话,还需要配合使用corntab来进行定时执行auto-remove:

corntab -e -u 你的用户名

比如我的程序目录是: /home/你的用户名/.local/autoremovetorrents/bin/autoremove-torrents

 */15  *     *   *  *       /home/${username}/.local/autoremovetorrents/bin/autoremove-torrents -c /home/${username}/.config/autoremovetorrents/config.yml -l /home/${username}/.config/autoremovetorrents/logs

*/15 的意思是每隔15分钟执行一次,具体的如何写crontab 可以参考 https://crontab.guru/

成功的话,就可以在程序的日志目录看到相关日志了:

最后来一个流量图:

我刷的是馒头的周末大包,大概每天能跑2T以上的样子,高峰期上传是跑满了G口的。

普通情况的话,也是能达到一个不错的速度的。大概能跑60MB/s 到 80 MB/s

2 Comments

  1. Guan
    Guan 05/26/2024

    哎,我在MT上发了8个电影合集,经常看到你们这样的“刷子”。

    服务器上下载,估计你们也不会看,就是为了刷上传,刷积分,一般刷完就跑,也不会长久保种,有什么意义呢?完全和PT精神相悖啊。

    我现在看到IP连续的,qBittorrent为4.3.9的就烦;我辛苦外网找合集,整理版本,整理文件名,发布,自己上传一份后就没我什么事了,上传全被刷子抢走了,即便MT现在规定刷子只算3倍,但是拿不住他3倍后还在不停地刷啊

    • Jokephp
      Jokephp 07/03/2024

      热门资源会加速呀 也算有帮助的吧

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注