基于Rclone网盘同步的NASTOOL搭建方式(同样适用于影视备份)
2022-11-29
| 2022-11-29
字数 2842阅读时长 8 分钟
type
status
date
slug
summary
tags
category
icon
password
Property
Nov 29, 2022 01:33 PM
实现的效果
  • 使用nastool自动搜索剧集
  • 使用nastool自动识别剧集
  • 上传重命名和刮削好的剧集到网盘(google drive 或者onedrive等)

搭建前必须要了解的概念

软链接

就是类似于windows的快捷方式。 比如:
同理windows,此时你删除源文件A,B还在,但是没用了,已经访问不了了。 这里讲软链接的目的就是方便理解硬链接。

复制

大家都了解了,不推荐,太影响性能,也占用空间。

rclone 的复制、移动和同步

推荐使用,但是不推荐在nastool中直接使用,对于使用docker版本的nastool配置比较复杂,而且最关键的一点,如果你的网速不能够实时上传到网盘里,那么本地就会有一个cache,这个cache也可能非常的大。 其实很多人想的是,我的vps硬盘很小,但是流量很足,想直接下到网盘了,这里很明确的说,这么做的效果是非常差的。rclone在move或者copy的过程中也会有cache文件,因为vps不可能和网盘是实时传输的,就会先cache到本地,然后再慢慢传。最关键的就是:nastool是在下载的瞬间就开始整理和刮削,那时候还没下完,这个时候同时在移动,非常耗费资源
rclone copy copy文件到云端,我目前是用的这种方式,因为我有pt站,需要做种 rclone sync 这种是增量备份,回删除云端的程序,不推荐 rclone move 如果你是全bt下载,我感觉这种方式就很好,bt设置下载完几分钟删除,然后move整理好之后的到云端

硬链接

推荐!很多人搭建nastool看了很多教程,教程里都是自己的机器,比如nas上面使用硬链接,但是就好奇,网盘怎么使用硬连接呢?不要急,先了解硬链接的特点: 硬连接在linux上的操作:
源文件A,硬连接B,他们都指向了同一个文件。 但是这个文件现在有了2个别名。 此时如果删除A,B还是能够访问到的内容的,只有把A和B同时删除了,这个文件在系统中才消失了。
同时硬链接也是一种链接,不会和复制一样增加很大的储存空间(就是个别名,几乎不额外占用空间)。
简单点说就是:如果创建了一个硬链接,那么我们操作这个硬链接,比如说移动或者修改原来的内容,效果和操作源文件是一样的。上传这个硬链接,也相当于上传的源文件!
如果还是看不懂,我这里找了几个比较明白的讲解:

环境搭建

为了防止出现权限问题,以下的所有安装都使用root权限
我是直接搭建在vps上的,docker的环境就行,本次使用的docker compose,无需特别的去安装docker-compose,因为docker原生就带compose。使用命令为:docker compose [后面的参数同dokcer-compose]
还有一点就是,nastool和bt下载器要放到一台机器上。

nastool中使用到的组件和理由

  • qbit:这个随自己喜欢,我使用的qbit
没了,包括索引器,字幕下载啥的,都推荐使用nastool自带的,因为那几个插件都不好用!

安装docker

无论你是什么linux发行版,使用如下命令都可以安装本次搭建的docker环境:
运行完上面两个命令之后,等到安装完成即可。

安装目录结构

演示环境使用如下命令操作:
此时的目录结构如下:
  • tv:存放电视资源
  • movie:存放电影资源
  • animation:存放动漫资源
  • link:用于硬链接的文件夹
    • 安装qibt

cd $home && cd qbit 来到qbit目录,创建一个docker-compose.yml 文件,复制下面内容进去。
如果全是bt下载的话,可以使用qbittorrent-ee,防吸血
使用命令 docker compose up -d 启动qbit,先不管,等会去配置。

安装nastool

cd $home && cd nastool 进入到nastool文件夹,同样也创建一个docker-compose.yml文件,如果是和我的步骤一摸一样,复制下面的内容进去。不一样的话自己改一下。
其实最关键的点就是映射了my_media目录,- /root/qbit/downloads:/my_media。因为使用硬链接不能跨盘。如果映射多个目录的话同步就会错误1,这也是在qbit目录的download目录下建立了一个link文件夹的原因。

配置qbit

更改监听端口

按照我的配置是:
,我的配置中把监听端口设置为了6981,因此先去设置中修改这个端口,如下图所示:
notion image

给未下载完成的项目添加一个后缀

notion image
这样只有下载完成的视频才会有比如.mkv后缀,这样才会去移动。

添加新的分类标签

在界面左边功能栏中,按下图创建新的分类
notion image
创建分类并配置好下载路径:按照我的qbit和nastool配置文件的以下都可以照着写
notion image
notion image
notion image
这样子nastool按照分类发送下载任务的时候,就可以准确的下载到指定的目录里面了。
同时可以设置自动删种,我是保种7天删除,这里随你了。
nastool的设置也不可能全部都设置到,就是设置了几个我感觉需要注意的点。

设置-基础设置-媒体

notion image
  • 默认文件转移方式:硬链接
  • 二级分类策略:我是直接给留空了,默认不分类 ,因为使用分类的话要去设置配置文件,我嫌麻烦
  • 刮削设置:因为我用的gd,有40w文件总数的限制,我就只保留了NFO,图片我全取消了

设置-媒体库

如下图所示:
notion image
设置的是硬链接之后的地址。

设置-目录同步

notion image

设置-下载器-下载器目录

notion image
这里配置的目录是下载器里映射的目录,最后的那个就是分类,对应的就是qbit的分类。
其他的配置就不写了 ,我把自动获取字幕也给关了。

rclone 上传到网盘

rclone 的配置,和sa的配置,我感觉有点麻烦网上教程很多,下面是我的脚本:。
这里就是简单的通过 rclone copy 命令来进行同步刮削之后的剧集。rclone的详细使用命令可以看Rclone 进阶使用教程 - 常用命令参数详解
你可以写一个定时脚本,或者 tmuxscreen一个新的窗口,没事干的时候手动去同步一下。
我是半小时执行一次
最关键的一点就是如何及时的清理vps的硬盘空间。我这里是2个步骤:
  • qbit 及时删种,我因为vps是10T的,设置了保种7天。但是删除了以后,因为是硬连接,所以还要去删硬连接的。
  • 脚本自动删除硬链接文件夹link中的各个大分类文件夹下,创建时间超过8天的文件夹。具体的按照天数删除的脚本可以搜一下,网上很多。
我自己的脚本:
我是半小时执行一次,可以自己改一下
最后来看一下我的效果:(之前第一次同步的时候用的sync,因为我增加了pt站,现在用的是copy,如果全bt可以用move)
顺便推荐一个我自己用的过滤规则 1080p和4k的通用视频文件下载规则
下面这个是只抓4k的

目录无法监控

进入到docker容易中,运行
重启容器即可。
  • 工具
  • docker
  • ZeroTier新手设置应用Zerotier 异地组网
    Loading...