使用CloudDrive实现123云盘到百度网盘的自动备份

     目前,我主要使用百度网盘和123云盘来备份本地数据。原本的计划是分别将数据上传到两个网盘,以避免其中某个网盘删文件的风险。但是,在使用Duplicati进行加密备份时,发现通过Alist备份到百度网盘的兼容性存在一些问题。妥协后,决定改用其他工具,直接从 123 云盘复制数据到百度网盘。虽然Alist提供了网盘间复制的功能,但只能手动操作,无法实现自动化。于是,我找到了CloudDrive这款工具。

    为了方便使用,用的docker安装的

docker run -d \

    --name clouddrive \

    --restart unless-stopped \

    --env CLOUDDRIVE_HOME=/Config \

    -v /data/clouddrive:/CloudNAS:shared \

    -v /data/clouddrive_config:/Config \

    --network host \

    --pid host \

    --privileged \

    --device /dev/fuse:/dev/fuse \

    cloudnas/clouddrive2

    安装完成后,添加两个网盘,然后添加备份任务,选择源文件夹和目标文件夹(支持多个)。最初,我在本地测试了备份流程,但由于 CloudDrive 运行时会占用本地带宽,因此想到可以将其部署到 VPS 上,数据都在云端,程序只是作为中转。

    正好有台相对空闲的阿里云 200M 轻量应用服务器,于是拿来进行测试。测试数据量大约35GB,起初下行带宽可以稳定跑满。但在复制到30GB 左右时,开始限速,速度降到一半以下,而上行带宽保持不变,整体仍可接受。第二天测试速度已经恢复。


    看了下能够完整复制,就是整体的UI不够美观,不过不影响使用。不过配置定时任务的时候要把星期也勾选,起初我只设置了时间,没有自动运行,加上星期后可以正常执行。
    PS:后续又观察了下,自动备份不完整,重新手动扫码后倒是补全了。不过如果出现 2025-03-20 05:20:54.175 ERROR cloudapi::downloader: read "文件" offset 369098752 len 524288 timedout 30s twice error Some(Recoverable("TimedOut readdataevet 369098752-369623039 wait timeout")) 这样的内容后,再次扫描也会失败,取消重试也没有用,重启服务再次扫描可以解决。

评论

此博客中的热门博文

飞牛私有云OS相册、MT Photos、immich简单对比

飞牛私有云OS使用AList挂载天翼云盘

飞牛私有云OS相册、MT Photos、immich简单对比(二)