项目地址:https://github.com/nickfox-taterli/goseeder
简而言之,这个工具:
不适合无限流量,希望通过自动辅种获得收益的人.
不适合拿着24T,48T大盘机的人,也不适合只有4G硬盘的人.
不适合觉得这篇内容过长,懒得阅读就直接提问,乱搞还说BUG的人.
适合拥有众多小鸡(N台),容量都不怎么大(10G ~ 1000G),并且网络有流量限制的人.
适合PT佛系养老,不想浪费众多小鸡的人,并且懒得管PT站死活,偶尔上去看看的那些人.
正因为此,这个工具就有了.之前我已经写过一个Python版本的,但是哪个版本有以下几个问题.
清理策略不完善,偶尔会出现磁盘空间0的情,偶尔过度清理,比如一下子删除了所有任务.
作弊功能基本鸡肋,各站反作弊能力越来越强.
磁盘或者网络过忙时候也会添加种子,最后积累大量任务无法进行,虽然最终跑满带宽,但是上传收益低.
无法对HR限制的PT网站处理,种子可能会被提前删除.
这个配置就这么一个文件,请参考(config-example.json):
dbserver 是你在MongoDB Altas申请的数据库的连接字符串,包括你的用户名和密码,格式参考如下,在Mongodb Altas控制面板可以直接取得.
node 是各PT网站的信息.
HR 限制的最小做种时间
HR 限制的最小做种比率
source 是PT网站的域名
passkey 玩过PT都懂
limit 即每次获取的数量上限,如果该网站更新快,就调大一些,否则调小一些减轻PT网站压力,推荐保留默认值.
enable 是否启用这个网站,填true启用,false就是暂时不用.
rule 网站规则(目前是用于HR,满足其中一个条件才可以删除种子,如果无HR请都调到0即可.)
server 是各小鸡QB的配置,Go版本采用并行查询,效率更高.
concurrent_download 最大同时任务数,任务数量过多,磁盘压力和带宽压力都很大,很容易达到瓶颈,如果水管小,则应该调小这个,如果水管大则可以调大,如果不想限制就设置很大的数值就可以,注意任务过多导致网络过快可能会触发TOS.
disk_threshold 触发清理功能的磁盘空间,当磁盘空间小于这个数值,就会触发种子清理,会清理掉最老最无用种子,单位是字节,计算工具参考:https://www.flightpedia.org/convert-bytes-to-gigabytes.html
max_speed 是允许添加种子的最大速度,比如你是100Mbps服务器,理论满速是12.8MB/s,如果此时你的服务器速度已经达到10MB/s,这个时候添加种子就抢不到什么速度,反而影响其他种子进度也落后于人,影响最终分享率.
min_alivetime 种子最短存活时间,避免某些种子下载之后没人下载,然后被很快清理掉,错过后期的做种好机会.
max_alivetime 种子最大存活时间,必须大于min_alivetime,超过max_alivetime的种子会被优先删除.
min_tasksize 最小的种子大小,如果种子小于这个大小就不要添加,添加更大的种子可以获得更好的收益,减轻磁盘压力,相应地也会忽略掉不少任务,设置为0接受任何种子.
max_tasksize 最大的种子大小,如果种子大于这个数值,就不要添加,太大的种子占用空间而且收益不一定高,如果想添加任何种子,请把max_tasksize设置得很大.
max_disklatency 磁盘延迟达到这个数值时候,不会添加任何种子,避免因为长期磁盘占用而触发TOS,如果想忽略这个参数,只需要把延迟调的很大就行.
endpoint QB的访问地址,末尾不带斜杠.
username 登录用户名
password 登录密码
reamrk 方便记忆的名字
enable 是否启用这个小鸡,填true启用,false就是暂时不用.
rule 小鸡规则(防止被TOS炸,最大化利用率等用途,如果不懂可以不动,调整他可以获得更好的体验.)
{ "dbserver": "mongodb+srv://username:[email protected]/?retryWrites=true&w=majority", "node": [ { "source": "pt.soulvoice.club", "passkey": "21232f297a57a5a743894a0e4a801fc3", "limit": 10, "enable": true, "rule": { "seeder_time": 0, "seeder_ratio": 0 } }, { "source": "www.nicept.net", "passkey": "21232f297a57a5a743894a0e4a801fc3", "limit": 10, "enable": true, "rule": { "seeder_time": 0, "seeder_ratio": 0 } }, { "source": "pt.msg.vg", "passkey": "21232f297a57a5a743894a0e4a801fc3", "limit": 10, "enable": true, "rule": { "seeder_time": 0, "seeder_ratio": 0 } }, { "source": "pt.btschool.club", "passkey": "21232f297a57a5a743894a0e4a801fc3", "limit": 10, "enable": true, "rule": { "seeder_time": 86400, "seeder_ratio": 1.2 } }, { "source": "www.haidan.video", "passkey": "21232f297a57a5a743894a0e4a801fc3", "limit": 10, "enable": true, "rule": { "seeder_time": 216000, "seeder_ratio": 1.5 } } ], "server": [ { "endpoint": "http://89.47.1.1:8080", "username": "admin", "password": "adminadmin", "remark": "Hostens (1024G)", "enable": true, "rule": { "concurrent_download": 5, "disk_threshold": 10737412742, "max_speed": 524288, "min_alivetime":3600, "max_alivetime":86400, "min_tasksize": 1073741274, "max_tasksize": 536870637122, "max_disklatency": 10000 } }, { "endpoint": "http://114.114.114.114:8080", "username": "admin", "password": "adminadmin", "remark": "Hostmem (60G)", "enable": true, "rule": { "concurrent_download": 5, "disk_threshold": 10737412742, "max_speed": 5242880, "min_alivetime":3600, "max_alivetime":86400, "min_tasksize": 1073741274, "max_tasksize": 536870637122, "max_disklatency": 10000 } } ]}
那么如何安装呢,先把配置文件放到/etc/goseeder.conf,然后执行下面几行就可以了.
curl https://raw.githubusercontent.com/nickfox-taterli/goseeder/master/goseeder.service > /etc/systemd/system/goseeder.service curl -L https://github.com/nickfox-taterli/goseeder/releases/download/v1.0/goseeder > /usr/local/bin/goseeder systemctl start goseeder systemctl enable goseeder
如何查看安装当前信息呢?
注意:剩余空间里面,第一个显示的是当任务全部下载完你的磁盘就剩下多少空间,负数意味着Over Commit,这是没关系的.方框内才是真实可用剩余.
systemctl status goseeder --no-pager --full
提个建议,不要用mongodb作为数据库,换用sqlite好些。flexget也是使用sqlite作为数据库的。原因:
1. 软件需要记录的数据量一般不大,
2. storage vps的RAM本来就不大,能少启动一个服务就尽量少一个。BT软件也特别吃RAM。
未经允许不得转载:搬瓦工VPS_美国VPS » PT自动工具:适合不想浪费众多小鸡的人,并且懒得管PT站死活,偶尔上去看看的那些人