BaiduPCS-Rust:开源百度网盘客户端,多线程下载与客户端加密

  • 1小时前
  • 7
  • 阅读10分钟
  • 核心摘要

    BaiduPCS-Rust是一款基于Rust和Vue3开发的开源百度网盘第三方客户端,提供多线程高速下载、多账号管理、自动备份、客户端侧加密等功能,支持Docker一键部署,完全免费使用。

    • 项目名称:BaiduPCS-Rust
    • 核心功能:多线程下载、多账号管理、自动备份、客户端加密、离线下载、分享同步
    • 适用人群:NAS用户、百度网盘会员、数据安全需求者、开发者
    • 资费模式:完全免费,Apache2.0开源协议
    • 部署方式:Docker容器化、手动编译、预编译二进制
    • 当前版本:v2.1.3

    这个项目是做什么的?

    多线程高速下载

    通过并发分片下载技术实现满速下载,支持8个并发分片可配置,配合断点续传能力,即使网络中断也可从断点处继续。特别适合NAS设备上无法使用官方客户端满速的场景。

    多账号独立管理

    可添加、切换、删除多个百度账号,每个账号独立维护会话、任务队列和资源配额。机器总线程按会员权重自动分配,普通会员推荐10线程,超级会员推荐15线程。

    自动备份与同步

    支持本地文件夹自动备份到网盘,也支持网盘文件同步到本地。通过文件系统监听实时检测变化,配合定时轮询兜底,确保备份完整性。

    客户端侧加密

    采用AES-256-GCM算法对上传文件进行端到端加密,加密文件使用.dat扩展名隐藏真实类型。支持密钥导出备份,下载时自动解密并恢复原始文件名。

    分享链接转存

    可直接转存百度网盘分享链接到自己的网盘,支持提取码验证和选择性转存。转存完成后可自动创建下载任务。

    离线下载功能

    支持通过百度网盘服务器代为下载HTTP/HTTPS/磁力链接/ed2k资源到网盘空间,任务完成后可自动下载到本地。智能轮询机制根据进度动态调整检测间隔,最小3分钟最大60分钟。

    分享同步订阅

    可订阅分享链接,周期或定时拉取并与上次快照对比,自动转存到网盘和/或下载到本地。支持多账号隔离、双目标配置、include/exclude路径过滤、三种冲突策略。

    Web访问认证

    提供密码保护和TOTP双因素认证支持GoogleAuthenticator,防止未授权访问Web界面。支持恢复码机制应对设备丢失场景。

    核心优势:为什么选择它?

    与同类工具的对比

    对比维度BaiduPCS-Rust官方客户端BaiduPCS-Go
    对比维度BaiduPCS-Rust官方客户端BaiduPCS-Go
    多线程下载支持8线程可配不支持支持
    多账号管理支持独立隔离不支持不支持
    自动备份支持双向同步不支持不支持
    客户端加密支持AES-256-GCM不支持不支持
    Web界面现代化Vue3+ElementPlus仅桌面应用命令行工具
    Docker部署支持一键启动不支持不支持
    开源协议Apache2.0闭源GPLv3
    资费完全免费免费免费

    界面展示

    独特卖点

    • 完全开源,代码透明可审计,隐私安全有保障
    • Rust语言开发,性能高效,内存占用低空闲100-200MB
    • Docker一键部署,跨平台支持Windows/Linux/macOS
    • 实时WebSocket推送,任务进度实时更新
    • 任务持久化与断点恢复,异常中断自动续传
    • 支持分享同步订阅,自动增量同步变动文件
    • CDN链接三层检测机制,自动应对限速和链接失效
    • 支持HTTP/SOCKS5代理,自动回退机制

    适用场景与目标受众

    NAS用户

    官方客户端在NAS设备上无法满速下载,BaiduPCS-Rust通过多线程并发和Docker容器化完美解决。可在NAS上部署,充分利用会员带宽实现满速下载。

    会员用户

    拥有百度网盘会员但下载速度受限的用户,通过配置合适的线程数SVIP建议10-20线程可显著提升下载速度,充分利用会员权益。

    数据安全需求者

    对文件隐私有要求的用户,可启用客户端侧加密功能,采用AES-256-GCM算法加密敏感文件,即使网盘被攻击也无法读取加密文件内容。

    自动备份需求者

    需要定期备份本地文件到云端或同步网盘文件到本地的用户,支持文件系统监听实时备份,也支持定时全量扫描兜底。

    开发者和极客

    对开源项目感兴趣的开发者,可以学习Rust异步编程、Vue3前端开发、Docker容器化等技术,或在此基础上二次开发。

    核心功能详解

    下载引擎

    支持单文件下载、文件夹递归下载、批量下载三种模式。下载冲突时可选择覆盖、跳过、自动重命名三种策略。支持速度限制、实时进度显示、暂停继续删除等操作。URL健康管理自动检测CDN链接失效,三层检测机制包括速度异常检测、线程停滞检测、定时强制刷新。

    上传引擎

    支持选择本地文件或文件夹上传,支持批量上传多个文件/文件夹。上传冲突支持智能去重、自动重命名、覆盖三种策略。支持秒传标识显示,上传任务进度实时展示已上传大小、总大小、上传速度、剩余时间。

    文件管理

    可浏览网盘文件和目录,支持面包屑导航、表格视图展示。支持文件搜索、重命名、批量复制、批量移动、批量删除等操作。加密文件会自动还原显示原始文件名。

    认证系统

    支持二维码扫码登录百度网盘APP扫码和Cookie登录粘贴浏览器DevTools中的Cookie字符串。自动会话管理和持久化,失效自动跳转登录页。支持Web访问认证,可配置密码保护和TOTP双因素认证。

    自动备份

    支持上传备份本地到云端和下载备份云端到本地。通过文件系统监听实时检测本地文件变化Windows使用ReadDirectoryChangesW,支持定时轮询和指定时间全量扫描兜底。支持备份配置管理、手动触发、禁用启用等操作。

    部署与安装

    Docker部署推荐

    mkdir -p baidupcs-rust/{config,downloads,data,logs,wal}
    cd baidupcs-rust
    
    docker run -d \
      --name baidu-netdisk-rust \
      -p 18888:18888 \
      -v $(pwd)/config:/app/config \
      -v $(pwd)/downloads:/app/downloads \
      -v $(pwd)/data:/app/data \
      -v $(pwd)/logs:/app/logs \
      -v $(pwd)/wal:/app/wal \
      --restart unless-stopped \
      komorebicarry/baidupcs-rust:latest
    
    访问 http://localhost:18888
    

    Docker Compose部署

    git clone https://github.com/komorebiCarry/BaiduPCS-Rust.git
    cd BaiduPCS-Rust
    docker-compose up -d
    访问 http://localhost:18888
    

    手动编译

    后端:
    cd backend
    cargo build --release
    cargo run --release
    
    前端:
    cd frontend
    npm install
    npm run build
    

    配置建议

    普通用户

    将全局最大线程数和最大同时下载数都设置为1,避免频繁触发限速。

    SVIP用户

    全局最大线程数建议设置为10-20,最大同时下载数根据需求调整。注意线程数过多反而容易触发限速,导致账号在各客户端接近0速。

    配置参数说明

    参数名称说明推荐值
    参数名称说明推荐值
    max_global_threads全局最大线程数所有下载任务共享普通1,SVIP10-20
    max_concurrent_tasks最大同时下载文件数1-2
    chunk_size_mb每个分片大小单位MB10
    max_retries下载失败最大重试次数3

    真实用户评价与使用体验

    正面评价

    用户普遍反馈BaiduPCS-Rust在NAS上的下载速度相比官方客户端提升显著,多线程并发配置合理的情况下可实现会员带宽的充分利用。Docker部署简便,开箱即用,无需复杂配置。

    客户端侧加密功能获得安全意识较强的用户好评,AES-256-GCM算法提供了足够的安全保障,加密密钥导出备份机制也很贴心。

    自动备份功能让用户可以放心地将重要文件定期备份到网盘,文件系统监听实时备份体验流畅。

    微小不足

    目前主要在Windows和Docker环境下进行充分测试,Linux和macOS等其他平台虽然理论上支持但不会主动测试。如在其他平台遇到问题欢迎提交Issue。

    手机端适配有待优化,虽然前端响应式设计支持移动端访问,但最佳体验仍在桌面浏览器。

    版本更新与路线图

    最新版本v2.1.3

    新增文件与下载列表排序功能,网盘/本地文件列表支持点击表头排序,下载管理页新增排序控件与状态筛选栏。修复了快速切换目录时偶发打不开的问题。

    已实现功能

    多线程下载、文件夹下载、批量下载、断点续传、上传功能、批量上传、自动备份、客户端侧加密、Web访问认证、离线下载、网络代理支持、分享链接转存、分享同步订阅、任务持久化、WebSocket实时推送、日志持久化、移动端适配。

    规划中功能

    下载/上传SSD缓冲区针对NAS用户减少HDD活跃时间。

    常见问题解答

    1. Q:BaiduPCS-Rust需要付费吗?

    A:完全免费。项目采用Apache2.0开源协议,源代码公开,任何人都可以免费使用、修改和分发。

    2. Q:使用BaiduPCS-Rust安全吗?会泄露账号信息吗?

    A:项目完全开源,代码透明可审计。支持本地部署,所有数据都存储在本地,不经过第三方服务器。支持客户端侧加密,敏感文件可加密存储。登录信息存储在本地config目录,不上传到任何云服务。

    3. Q:BaiduPCS-Rust支持哪些平台?

    A:理论上支持Windows、Linux、macOS等所有Rust支持的平台。主要在Windows和Docker环境下充分测试。提供预编译二进制文件供Windows、Linux x86_64和ARM64、macOS x86_64和ARM64用户下载。

    4. Q:下载速度慢怎么办?

    A:普通用户建议线程数设置为1避免触发限速。SVIP用户可尝试调整max_global_threads为10-20,但注意线程数过多容易触发限速导致账号被限制。如果仍然速度慢,可能是百度服务器限速,此时无法通过客户端解决。

    5. Q:如何备份加密密钥?

    A:加密密钥存储在config/encryption.json文件中,支持通过Web界面的导出密钥功能备份。丢失密钥后将无法解密已加密的文件,务必妥善保管。

    6. Q:支持分享链接转存吗?

    A:支持。可直接粘贴百度网盘分享链接,输入提取码如有,选择转存目标目录。转存完成后可选择自动创建下载任务下载到本地。

    推荐文章

  • 0
  • 0
  • BaiduPCS-Rust:开源百度网盘客户端,多线程下载与客户端加密
  • 发表评论

    发表
    BaiduPCS-Rust:开源百度网盘客户端,多线程下载与客户端加密
  • 评分:
  • 平台:5  7  6
  • 类型:第三方客户端 / 下载工具
  • 专题:Github
  • 项目介绍:
  • komorebiCarry BaiduPCS-Rust
  • 587 37
  • 创建:7月前 更新:7小时前
  • 一个使用 Rust 和 Vue 3 构建的 百度网盘第三方客户端,提供多线程下载、多账号管理、自动备份与本地侧加密上传能力,并支持 Web 管理、访问密码与 TOTP 双因素认证。 - komorebiCarry/BaiduPCS-Rust
  • *数据缓存于:2小时前
  • 大家在看

  • 站点
  • 软件
  • 技巧
  • 上升前十

  • 站点
  • 软件
  • 技巧
  • 订阅我们

    输入你的电子邮件地址订阅网站,我们会在有必要时通过邮件联系您
    订阅
    *订阅成功后会收到订阅通知
    微信公众号:xiangleshare
    三天内不显示