1. 话痨少年首页
  2. 资源分享

#Transmission# Debian/Ubuntu 安装使用TR和FlexGet自动刷PT流量

图片.png

请注意本教程只适用于Debian9和Ubuntu16以上的系统

安装Transmission

apt-get update
apt-get install transmission-daemon -y

修改配置需要先停止运行:

/etc/init.d/transmission-daemon stop
vi /var/lib/transmission-daemon/info/settings.json

需要修改其中的部分内容:

rpc-username 帐号
rpc-password 密码
"rpc-authentication-required": true
"rpc-whitelist-enabled": false
"preallocation": 0

启动

/etc/init.d/transmission-daemon start

访问transmission

通过服务器IP加9091端口
http://ip:9091
可以访问transmission的webui。

安装FlexGet

逐条执行
(切记,请一定按照顺序执行)

apt-get install -y python-pip python-setuptools nano
pip install --upgrade pip
pip2 install flexget

配置FlexGet

mkdir /root/.flexget
nano /root/.flexget/config.yml

只能用nano,vi和vim大概不支持带.的目录。

FlexGet配置文件示例:

tasks:
  mt:
    rss: https://tp.m-team.cc/torrentrss.php?https=1&rows=10&linktype=dl&passkey=xxxxxxxxxxxxxx
    accept_all: yes
    content_size:
      min: 256
      max: 4000
    download: /var/lib/transmission-daemon/torrents
    transmission:
      host: 127.0.0.1
      port: 9091
      username: username
      password: password
  ttg:
    rss: https://totheglory.im/putrss.php?par=xxxxxxx&ssl=yes
    accept_all: yes
    content_size:
      min: 256
      max: 4000
    download: /var/lib/transmission-daemon/torrents
    transmission:
      host: 127.0.0.1
      port: 9091
      username: username
      password: password

以上内容表示,只下载文件大小在256MB和4000MB之间的种子,用户名和密码为之前配置的transmission的。rss为pt网站订阅的rss地址。一般选择所有的就行了,TTG等网站需要注意最好不要覆盖那些带H&R的内容(剧集)。

多个任务,在后面添加即可。

因为没有这个种子文件下载目录,需要先创建:

mkdir /var/lib/transmission-daemon/torrents

FlexGet配合transmission还需要插件支持:

pip2 install transmissionrpc

FlexGet简单命令:

flexget check : 用于检查 config.yml 配置文件是否有格式错误。
flexget execute : 手动开始一次 RSS 下载,就等于正式 RSS 了一次。

可以执行一次flexget check,一般是没有问题的。

添加自动任务:

crontab -e

在其中添加:

/5 * /usr/local/bin/flexget -c /root/.flexget/config.yml execute

表示每5分钟更新一次RSS。

自动删除种子文件

先创建Shell文件:

vi trans_cleanup.sh

其中内容为:

#! /bin/bash
#====================================================================
# trans_cleanup.sh
#
# Copyright (c) 2011, WangYan <[email protected]>
# All rights reserved.
# Distributed under the GNU General Public License, version 3.0.
#
# Monitor disk space, If the Over, delete some files.
#
# See: http://wangyan.org/blog/trans_cleanup.html
#
# V0.2, since 2012-10-29
#====================================================================
# The transmission remote login username
USERNAME="username"
# The transmission remote login password
PASSWORD="password"
# The transmission download dir
DLDIR="/var/lib/transmission-daemon/downloads"
# The maximum allowed disk (%)
DISK_USED_MAX="90"
# Enable auto shutdown support (Disable=0, Enable=1)
ENABLE_AUTO_SHUTDOWN="0"
# Log path settings
LOG_PATH="/var/log/trans_cleanup.log"
# Date time format setting
DATA_TIME=$(date +"%y-%m-%d %H:%M:%S")
#====================================================================
dist_check()
{
    DISK_USED=`df -h $DLDIR | grep -v Mounted | awk '{print $5}' | cut -d '%' -f 1`
    DISK_OVER=`awk 'BEGIN{print('$DISK_USED'>'$DISK_USED_MAX')}'`
}
dist_check
if [ "$DISK_OVER" = "1" ];then
        for i in `transmission-remote --auth $USERNAME:$PASSWORD -l | grep 100% | grep Done | awk '{print $1}' | grep -v ID`
        do
                [ "$i" -gt "0" ] && echo -n "$DATA_TIME [Done] " >> $LOG_PATH
                transmission-remote --auth $USERNAME:$PASSWORD -t $i --remove-and-delete >> $LOG_PATH 2>&1
                [ "$i" -gt "0" ] && sleep 10 && dist_check
                [ "$DISK_OVER" = "0" ] && break
        done
fi
if [ "$DISK_OVER" = "1" ];then
        for ii in `transmission-remote --auth $USERNAME:$PASSWORD -l | grep Stopped | awk '{print $1}' | grep -v ID`
        do
                [ "$ii" -gt "0" ] && echo -n "$DATA_TIME [Stopped] " >> $LOG_PATH
                transmission-remote --auth $USERNAME:$PASSWORD -t $ii --remove-and-delete >> $LOG_PATH 2>&1
                [ "$ii" -gt "0" ] && sleep 10 && dist_check
                [ "$DISK_OVER" = "0" ] && break
        done
fi
if [ "$DISK_OVER" = "1" ];then
        for iii in `transmission-remote --auth $USERNAME:$PASSWORD -l | grep -v Sum | awk '{print $1}' | grep -v ID`
        do
                [ "$iii" -gt "0" ] && echo -n "$DATA_TIME [Up or Down] " >> $LOG_PATH
                transmission-remote --auth $USERNAME:$PASSWORD -t $iii --remove-and-delete >> $LOG_PATH 2>&1
                [ "$iii" -gt "0" ] && sleep 10 && dist_check
                [ "$DISK_OVER" = "0" ] && break
        done
fi
if [ "$DISK_OVER" = "1" ];then
        rm -rf $DLDIR/*
fi
if [ "$ENABLE_AUTO_SHUTDOWN" = "1" ];then
        SHUTDOWN=1
        for STATUS in `transmission-remote --auth $USERNAME:$PASSWORD -l | awk '{print $9}'`
        do
                if [[ "$STATUS" = "Up" || "$STATUS" = "Uploading" ]];then
                        SHUTDOWN=0
                fi
        done
        TASK_TOTAL=`transmission-remote --auth $USERNAME:$PASSWORD -l | grep -Ev '(ID|Sum)' | wc -l`
        if [ "$TASK_TOTAL" -gt "0" ] && [ "$SHUTDOWN" -eq "1" ];then
                echo -n "$DATA_TIME " >> $LOG_PATH
                shutdown now >> $LOG_PATH 2>&1
        fi
fi

自行修改其中的username和password,以及DISK_USED_MAX=”90″,这个数值表示最大可占用的硬盘空间,超过以后就会自动删除pt种子。不要设置太大,谨防下载速度太快爆硬盘,会导致服务器无法连接。

创建自动任务,在crontab里添加:

/1 * /bin/bash /root/trans_cleanup.sh

每分钟检查一次硬盘空间占用。

注意:如果硬盘空间太小,可能会导致每个种子的分享率不高,按需要调节每个种子文件大小限制,或者减少添加的task。

原创文章,作者:双木,如若转载,请注明出处:https://www.09l.me/2180.html

发表评论

登录后才能评论

评论列表(2条)

  • moon
    moon 2019-09-04 11:41

    不知道刷PT流量干啥用,我比较白

    • 话痨少年
      双木 回复 moon 2019-09-06 10:58

      如果上传流量和下载流量 比例 小于1:1 则有封号危险
      所以上传流量越多就越好。

联系我们

邮件:[email protected]