剪藏#剪藏#梦飞苍穹

技术实践:rclone+alist组合拳,轻松搞定NAS与阿里云盘数据同步

2025 年 5 月 11 日1 分钟
分享Twitter / XTelegram微博

Notion image

简介

  • alist可以轻松挂载各大主流云盘,并转换成webdav服务

  • rclone同样支持很多云存储驱动,包括webdav,可以实现增量数据同步,高效便捷

  • alist搭配rclone,可以实现本地与本地、本地与云盘、云盘与云盘之间的数据同步,保证数据存储安全

  • 下面是现实nas本地文件同步阿里云盘数据的操作用例

第一步:安装alist,并且把阿里云盘指定目录挂在到alist

  • docker安装alist,新建配置文件docker-compose.yml,配置如下: version:`` ``'3' services: ``alist: ``image:``'xhofe/alist:latest' ``volumes: ``-``./data:/opt/alist/data ``ports: ``-``'5244:5244' ``environment: ``-``PUID=0 ``-``PGID=0 ``-``UMASK=022 ``-``TZ=Asia/Shanghai ``restart:`` ``unless-stopped

  • 一键启动运行 docker-compose up -d

  • 获取默认登录账号密码 docker-compose logs

  • 登录alist后台,添加阿里云盘open驱动,设置刷新token,具体参考官方指导:https://alist.nn.ci/zh/guide/drivers/aliyundrive_open.html

  • 添加阿里云盘open驱动和挂在路径 webdav策略使用“本地代理” 设置阿里云盘的刷新token,指定挂载的根目录 挂载上了 因为要用到alist提供的webdav服务,所有需要开启用户webdav权限

第二步:安装rclone,配置alist提供的webdav服务

  • 具体同步逻辑如下图所示

  • 安装配置可参考:https://github.com/luler/rclone_docker ,拉代码,进入目录 //拉代码 git ``clone`` https:``//github.com/luler/rclone_docker.git //进入目录 cd rclone_docker

  • 修改config/rclone.conf,配置远程存储驱动,这里使用webdav为例,其他驱动请参考rclone官方文档:https://rclone.org/docs/ rclone要求webdav的密码不能直接使用明文,需要加密一下 docker run --``rm`` -it ghcr.io/luler/rclone_docker:latest rclone obscure ``"fUlaQHte" config/rclone.conf配置内容如下: [mywebdav] type`` = webdav url`` = http://``192.168``.``1.105``:``5244``/dav/ ``# 这里填写alist的webdav地址,要填容器内可以访问alist的ip或域名 vendor`` = other ``# 一般默认这个即可 user`` = admin ``# webdav用户名 pass`` = a-Zsy2HhSSgMYC40dG_WevAGFMaUFzys ``# webdav密码,注意:这里需要使用rclone的混淆密码,如:rclone obscure "你的明文密码"

#no_check_certificate=true # 如果需要跳过SSL验证

  • 修改config/crontab,配置定时任务,如下示例: # 每分钟执行备份,flock防止重复执行 * * * * * flock -n /tmp/rclone.lock rclone ``sync`` mywebdav:我的阿里云盘目录/ /data --log-file=/var/log/rclone-sync.log --log-level=INFO --stats=10m

  • 配置好了之后,代码目录下已配置好docker-compose.yml,使用docker-compose一键启动即可 docker-compose up -d

  • 查询执行情况 docker-compose logs成功执行完毕 云盘数据已被同步下来 如果失败,可以打开rclone的日志文件logs/rclone-sync.log,以便分析原因

总结

  • 普通阿里云盘用户有下载限速,如果数据很大,第一次rclone同步会耗时很久,第一次完成后,后续就是增量同步了

  • 本用例只是一个简单用例,类似的,使用alist、rclone还可以扩展到更多使用场景

Notion image

推荐一下个人网站(本文内容如有错漏只会在个人博客更新):

原文地址: https://mp.weixin.qq.com/s?__biz=MzU1NzA1MTMwMg==&mid=2247483981&idx=1&sn=2ce28576bd3f4a0a44eba62915295a8a&chksm=fdfb7b1f6efe504019024f86625bf4f635aa68586bd22895db00d4f302d89164559e79c124c3&mpshare=1&scene=1&srcid=0511kcz8YktKSgDfTFSJP5jA&sharer_shareinfo=caf191e19ff259e2a26a2c5eef7a7ca9&sharer_shareinfo_first=caf191e19ff259e2a26a2c5eef7a7ca9#rd

相关文章