个人的需求场景是:
在PT服务器上,将PT的 downloads 目录Map到Cloudreve上,做到PT下好了片片,Cloudreve这边可以直接看到。
看了看交互 Cloudreve 好像产品思路是做在线网盘,所有文件的产生都依赖交互的文件上传
看了看代码,我想到了一种比较简易并且不破坏现有代码的方案,不知道是否可行
想到的改进方案:
增加一种本地存储策略,选中一个本地目录之后,按照 file watcher 的思路,监听目录中的文件变化,比如使用( fsnotify )。
如果产生变化,将该变化构造成 file_upload 请求,打到 v3/file/upload
接口上,在该请求上增加个flag标识来表示这是目录Map类的请求。在upload的请求处理中,如果是该类请求,会走创建软连接的方案在 Cloudreve 的存储位置中创建一个指向源文件的软连接。
这样原始文件只有独一份,Cloudreve只是额外构造了一个文件组织关系
不知道我表述的是否清楚... 也不知道这样的改造可行性与成本,是否有一些我没有注意到的其他棘手场景也需要解决
2条答案
按热度按时间q35jwt9p1#
大概思路可行,但还需要考虑文件删除、大小的更改,实现起来还是有点复杂的。
olmpazwi2#
有需求+1