最近一直用docker
版messense/aliyundrive-webdav
阿里云盘同步,但是这个docker版有bug,文件比较多的时候经常出现死循环,无限循环下载并删除本地文件,永远下载不完。
因此考虑换掉aliyundrive-webdav
并使用alist
。
alist
最近支持了官方的阿里云盘开放接口。
安装配置alist
什么是alist
alist
是一个支持多种存储的文件列表程序,官网地址:https://alist.nn.ci/zh/
alist
可以挂载各种网盘,并且可以挂载其他开放alist
,比如小雅,梵天等。
2023-03-05:注意,最新alist不能挂接阿里云盘分享了,各种分享链接都被限制了,就算挂接上也会限速100kb左右。
最主要的是最近alist
支持官方的阿里云盘开放接口【阿里云盘 Open】。
参考文档地址:https://alist.nn.ci/zh/guide/drivers/aliyundrive_open.html
开放平台目前还是内测阶段:https://www.yuque.com/aliyundrive/zpfszx
安装alist
我们这里选用矿神的套件库(官网:https://imnks.com/),用第三方套件库可以比较方便安装。如果没有配置第三方套件源,可以自行添加:
配置好套件来源之后,搜索alist
并安装
安装第三方套件一般都有一定风险,提示如下,必须同意才能安装,请自行判断:
安装好后登录,默认账号是:admin
,密码:alist
登录进去之后可以修改密码,并可以增加其他账号,建议增加一个账号,不直接使用admin
。
guest账号处理
guest
账号默认能浏览文件,而且不能删除,这点需要注意了。
由于是自建的alist
,不太想暴露出去,可以考虑把guest
的基本路径配置到一个空文件夹的路径(要先挂载存储才能选到路径),不知道还有没有更好的方式。
挂载阿里云盘Open
最新要使用阿里云盘Open,以前的阿里云盘已经不推荐使用了。
基本说明
在【存储】下点击【添加】,可以看到alist
中有三个和阿里云盘相关选项:
阿里云盘——老的模式,用浏览器中的token
阿里云盘Open——最新的阿里云盘开放平台模式(就选它)
阿里云盘分享——可以直接挂载别人分享的地址,分享可能会过期,不太建议使用,除非自己阿里云盘容量实在太小了。
挂载云盘
点【阿里云盘Open】之后,出现配置界面,这里主要有【挂载路径】和【刷新令牌】需要注意,如果要配置同步,还注意这个【WebDAV策略】,后面会提到。
【挂载路径】自己定义一个,我这里使用的是/aliyundrive
,【刷新令牌】需要单独页面获取。
获取刷新令牌
虽然都叫刷新令牌,但是这个令牌和以前老版本的浏览器中获取的refresh_token
不一样,格式也不一样。
参考文档:https://alist.nn.ci/zh/guide/drivers/aliyundrive_open.html
进入页面:https://alist.nn.ci/tool/aliyundrive/request.html,可以登录或者扫二维码:
扫完二维码,在手机上确认授权之后,点击【I have scan】
弹出的新页面就有refresh_token
了,是基于JWT Token
格式的,以前的token
类似一个uuid
:
把token
复制出来填入前面表单的【刷新令牌】中,其他选项都随便填写,【添加】之后就可以看到状态为work。
这时候进入主页就能浏览到文件了。
配置阿里云盘同步
阿里云盘已经挂载到alist
,alist
本身也提供有WebDAV
服务,访问地址为:http://nas_ip:5244/dav
虽然阿里云盘已经可以直接访问到了,不过有些文件可能容易被河蟹,还是想把部分需要的文件同步到NAS
上
CloudSync同步报错
不过直接用这个在群晖的CloudSync
中配置同步服务会报错。
下载失败。权限不足
这里主要是alist
默认配置的WebDAV
策略问题
默认的WebDAV
策略是【302重定向】,相关策略介绍:https://alist.nn.ci/zh/guide/drivers/common.html#webdav-%E7%AD%96%E7%95%A5
- 302 重定向:重定向到真实链接(
CloudSync
同步有问题,但是不用本地中转,在外网访问时不用本地带宽) - 使用代理 URL:重定向到代理 URL(需要代理地址)
- 本机代理:直接通过本地中转返回数据(最佳兼容性,要从本地中转一次,外部访问也要经过本地
alist
服务)
从上面的策略看,最好的方式是把阿里云盘挂接和同步文件夹挂接分开,同步文件夹单独使用本机代理模式,并指定根文件夹ID
配置同步文件夹挂接
进入web
版阿里云盘,进入自己需要同步的文件夹,从浏览器地址栏复制后面/folder/
后面的部分:
https://www.aliyundrive.com/drive/folder/xxxxxxxxxxxx,这个就是【根文件夹ID】
配置同步文件夹
配置同步文件夹和以前的WebDAV
同步没有什么区别,在群晖的CloudSync
套件中选择【+】:
选择WebDAV
之后,配置WebDAV
地址和账号信息:
配置同步文件夹,这里选自己的同步文件夹的挂接地址:
配置完成就可以同步数据了,目前测试下来挺稳定,没有出现死循环的现象。
挂载第三方alist
alist
有一个比较大的优势就是可以把一些开放的alist
挂载到自己的alist
中,方便本地访问,而且后面把alist
通过CloudDrive
挂载到本地磁盘之后,还可以像访问本地磁盘一样访问,很方便。
注意:一般都推荐自己安装一个docker
服务来请求,使用自己的Token
,直接挂载并不是好的方式,经常访问失败,这里只是试验一下
这里以小雅为例,驱动选【AList V3】,挂载路径:/xiaoya
,链接:http://alist.xiaoya.pro/
:
这样就简单的把小雅挂载到自己的alist
中了。
2023-03-05:注意,最新alist不能挂接阿里云盘分享了,各种分享链接都被限制了,就算挂接上也会限速100kb左右。这些第三方alist基本都是挂接的分享链接,基本上算是不可用了。