夜雨聆风学习资料网

ARTICLE · 1279523

2TB 网盘文件搬家不用下载到电脑!这款开源工具支持 6 家网盘互传,断点续传

2TB 网盘文件搬家不用下载到电脑!这款开源工具支持 6 家网盘互传,断点续传

平时使用网盘的朋友,可能都遇到过这样的问题:

百度网盘里的文件太多,想换到阿里云盘;夸克网盘空间到期,想把里面的资料转移到 115;或者原来的网盘不想继续续费,需要把几百 GB 甚至几 TB 的文件整体搬走。

传统方法通常只有两种:

第一种:先把旧网盘里的文件全部下载到电脑,再上传到新网盘。

第二种:通过第三方网盘中转服务,但可能涉及文件隐私、容量限制和额外费用。

如果需要迁移的是 2TB 文件,不仅需要准备足够大的硬盘,还要花费大量时间等待下载和上传。

有没有一种办法,可以让两个网盘直接完成文件迁移,而不需要把整个文件都下载到本地?

今天介绍一个 GitHub 上的开源项目:搬山(Banshan)。

它是一款专门用于网盘迁移的桌面工具,支持六家主流网盘互相搬运文件,采用分片传输、本机中转和断点续传机制。即使需要迁移几个 TB 的资料,也不需要提前准备几个 TB 的本地磁盘空间。

一、搬山是什么?能解决什么问题?

搬山(Banshan)是开发者 AYuanNmmmm 开源的一款网盘迁移工具。

它的主要用途很简单:选择一个源网盘,再选择一个目标网盘,就可以把文件从一个网盘迁移到另一个网盘。

项目采用 MIT 开源协议,支持查看源代码,也允许开发者根据协议要求进行修改和二次开发。

它最值得关注的地方,并不是简单地把两个网盘连接起来,而是改变了传统网盘搬家的数据传输方式。

传统搬家方式:

旧网盘 → 下载到电脑硬盘 → 再上传到新网盘。

搬山的传输方式:

旧网盘 → 分片读取 → 本机内存中转 → 分片上传 → 新网盘。

简单来说,它读取一部分文件,上传一部分文件,完成后就释放这一部分数据,不需要将整个文件完整保存到电脑硬盘。

例如,迁移 2TB 的资料,本地只需要提供少量分片传输所需的临时空间,而不是准备一块 2TB 的硬盘。

当然,本机仍然需要承担网络传输和临时数据处理,实际速度也取决于源网盘、目标网盘、网络环境和平台限制。

二、支持六家网盘,任意组合互相迁移

目前搬山支持六家国内比较常见的网盘:

百度网盘

阿里云盘

夸克网盘

天翼云盘

115 网盘

123 云盘

这意味着可以实现:

  • 百度网盘 → 阿里云盘
  • 阿里云盘 → 夸克网盘
  • 夸克网盘 → 115 网盘
  • 115 网盘 → 123 云盘
  • 天翼云盘 → 百度网盘
  • 123 云盘 → 阿里云盘

六家网盘任意选择两个作为迁移的源端和目标端,总共有 30 种不同的迁移方向。

不需要针对不同网盘分别寻找搬运工具,一套软件就能完成多种组合。

需要注意,各家网盘的上传接口、分片大小、并发限制和账号权限并不相同,实际可用能力会受到平台规则影响。

三、最实用的功能:分片传输,不占用整盘空间

这是搬山最值得介绍的功能。

假设你需要从百度网盘迁移一个 100GB 的文件到阿里云盘。

传统方式需要先将 100GB 文件完整下载到电脑,然后再上传。

搬山采用的是分片直传:

  1. 从源网盘读取一部分文件。
  2. 将读取的数据分片上传到目标网盘。
  3. 当前分片完成后释放临时数据。
  4. 继续读取下一部分。
  5. 所有分片完成后,结束整个文件的迁移。

这种方式最大的好处就是不需要预留与迁移文件总量相同的本地硬盘空间。

对于电脑硬盘容量不大,却需要迁移大量网盘资料的用户来说,非常实用。

传输完成后还会进行校验

文件上传完成,并不意味着一定没有问题。

搬山还提供了文件校验功能:

  • 首先对比源文件和目标文件的大小。
  • 然后抽取文件开头、中间和结尾三个位置的内容进行比对。
  • 如果发现不一致,就将任务判定为失败。

这里需要说明:它采用的是抽样校验,而不是完整文件哈希校验。因此不能保证发现所有可能的数据损坏。

不过,对于大批量文件迁移,这种方式可以在控制额外读取成本的同时,发现相当一部分传输异常。

四、断点续传,电脑关机也不用从头开始

迁移几百 GB 或者几 TB 的文件,可能需要很长时间。

如果中途网络断开、电脑重启,或者不小心关闭了软件怎么办?

搬山提供了断点续传机制。

它会使用 SQLite 数据库记录迁移任务和进度,即使关闭软件,重新打开后也可以继续之前的任务。

另外,还提供了比较实用的任务管理功能:

  • 暂停任务: 暂时停止当前迁移。
  • 停止任务: 停止当前操作。
  • 失败重试: 对迁移失败的文件重新执行。
  • 只选未完成: 不必重新选择整个文件夹。
  • 导出报告: 可以将迁移结果导出为 CSV 文件。
  • 目录扫描: 选择整个文件夹,自动扫描目录下的文件。

任务状态也进行了分类,可以分别查看已完成、已跳过、失败和总文件数量。

对于需要迁移大量文件的用户,这些功能比单纯的文件复制更加方便。

五、软件界面和技术架构也比较简洁

从项目介绍来看,搬山并没有使用复杂的前端框架。

它采用:

  • 后端:Python 标准库。
  • 前端:HTML、CSS、JavaScript。
  • 本地数据库:SQLite。
  • 本地服务:默认监听 127.0.0.1:8899。
  • 传输方式:分片读取和上传。
  • 登录方式:扫码登录、浏览器自动化等。

软件启动后,会自动打开本地浏览器界面。

界面支持浅色和深色两种模式,可以根据个人习惯切换。

还有一个比较值得关注的地方:

项目目前提供了 253 个单元测试,覆盖传输引擎、网盘适配器、登录状态、任务数据库和浏览器登录等功能。

对于一个个人开发的开源工具来说,这样的测试覆盖值得肯定。

六、使用之前,这几个限制一定要知道

虽然搬山的功能比较实用,但它并不是没有限制。

尤其是涉及网盘账号和大量文件迁移,建议提前了解以下问题。

  1. 依赖网盘非公开接口

目前六家网盘的适配都依赖各平台的非公开接口。

如果网盘官方修改接口、登录验证或上传规则,可能导致部分功能无法使用。

因此,这类工具需要开发者持续维护,不能保证长期稳定。

  1. 百度网盘开放平台存在目录限制

百度网盘通过开放平台 OAuth 授权时,第三方应用通常只能访问 /apps/ 目录下的专属文件夹,无法直接读取原有网盘中的全部文件。

如果需要迁移已有资料,项目默认提供扫码登录方式,以便访问整个网盘,但扫码登录状态可能过期。

  1. 115 网盘存在文件大小限制

根据项目说明,115 网盘采用整文件上传方式,单文件上传上限为 500MB。

如果需要迁移超过这个大小的单个文件,就需要特别留意。

  1. 部分网盘功能受到账号等级影响

夸克网盘和天翼云盘的部分功能可能受到账号等级限制。

即使软件本身支持,也不代表所有账号都能使用全部功能。

  1. Cookie 和 Token 保存在本地

项目说明,登录凭据只保存在本地配置文件中,不会上传到第三方服务器。

但需要注意,凭据在本地以明文形式保存。

如果是在多人共用的电脑上使用,建议迁移完成后妥善处理登录凭据,避免账号信息泄露。

  1. 目前 macOS 只提供 Apple Silicon 版本

Windows 用户可以直接下载使用。

Mac 用户需要注意,目前 Release 提供的是 Apple Silicon 版本,也就是 M 系列芯片的 Mac。

Intel 芯片的 Mac 暂时不能直接使用这个安装包,可以考虑从源码运行。

七、如何下载和使用搬山?

项目已经提供了 Windows 和 macOS 的编译版本,不需要所有用户都自己安装 Python 环境。

Windows 用户

  1. 打开上面的 GitHub Release 页面。
  2. 下载 banshan-windows-x64-v1.26.0.exe。
  3. 双击运行。
  4. 根据界面提示登录源网盘和目标网盘。
  5. 选择需要迁移的文件或文件夹。
  6. 点击开始迁移,等待任务完成。

macOS 用户

下载 banshan-macOS-arm64-v1.26.0.zip,解压后运行 搬山.app。

如果首次打开提示无法验证开发者,可以通过右键打开,或者进入系统设置的「隐私与安全性」中选择仍要打开。

不想登录真实网盘?可以先使用演示模式

如果担心误操作真实网盘,可以从源码启动。

项目要求 Python 3.9 或更高版本,启动命令:

python3 -m panmigrate

默认访问:

http://127.0.0.1:8899

然后执行演示接口:

curl -X POST http://127.0.0.1:8899/api/demo

程序会自动创建一些模拟文件,并使用两个本地文件夹模拟网盘两端。

这样就可以先熟悉整个迁移流程,不需要登录真实账号。

八、最后说几句

对于经常使用网盘保存资料的人来说,网盘之间的文件迁移一直是一个比较麻烦的问题。

尤其是当资料达到几百 GB、几 TB 时,传统的下载再上传方式,不仅耗费时间,还需要占用大量本地硬盘空间。

搬山的思路比较直接:通过分片读取、分片上传和本地任务记录,把原本繁琐的网盘搬家过程简化了。

它目前支持百度网盘、阿里云盘、夸克网盘、天翼云盘、115 网盘和 123 云盘六个平台,Windows 用户还可以直接下载便携版使用。

当然,由于依赖非公开接口,稳定性和账号风控问题仍然需要考虑。

我的建议是:第一次使用不要直接迁移全部资料,先拿几百 MB 的文件测试一遍,确认速度、文件完整性和账号状态都正常,再逐步迁移重要资料。

另外,迁移完成后不要立即删除源网盘文件。抽样校验不等于完整性校验,最好抽查几个大文件,确认能够正常打开后再清理原始数据。

如果你经常需要在不同网盘之间搬运文件,或者正好遇到网盘空间到期、换平台等情况,这款开源工具值得收藏。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料