Rclone数据备份
原创大约 3 分钟
Rclone 是一个命令行程序,用于管理云存储上的文件。它是云供应商网络存储接口的替代品。Rclone 支持超过70个云存储产品支持,包括 S3 对象存储,商业级别和消费者级别文件存储服务以及标准传输协议。
安装
Unraid 上安装 Rclone
在 Unraid 的上有官方提供的 Rclone 插件版,安装完成后就可以在系统设置内看到了。
二进制安装
使用官方的安装脚本:
sudo -v;
curl https://rclone.org/install.sh | sudo bash
配置(以 OneDrive 为例)
运行 rclone config
开启交互式的配置命令,根据配置一步步往下走。
- 首先是让你选择用什么网盘;
- 选择完后会出现几个可选项,
clien_id
、client_secret
,都可以空掉不填; - 选择完后就是要输入 OneDrive 的认证 token 了,这时候会让你选择在带有 web 浏览器的机器上操作,意思是如果是在终端远程操作的,就要转移到本机上来获取 token。
- 先在本机上下载 Rclone,Windows 版下载下来直接就是可执行文件;
- 在 exe 文件夹打开命令行页面,执行
rclone authorize "onedrive"
就会弹出 OneDrive 的认证窗口; - 登录账号并允许权限后就会在命令行把 token 打印出来,直接再粘贴回 Rclone 配置的命令行当中就行了。
- 然后再是确认几个问题就 ok 了,基本按默认跟合适的选择就对了;
- 最后会显示以下最终的配置。
添加完成后,在 Rclone 插件页面刷新就能看到新配置的远端云盘了。再次运行 rclone config
会显示如下:
查看远端文件目录:
rclone lsd <远端名称>:
本地→网盘同步命令:
rclone sync /local/file <远端名称>:/remote/file
需要注意的是,同步命令有两个:
sync 是单向同步,只会修改目标,不会修改源目录。
- 假如你在本地删除了其中的文件,那么远程对应的文件也会被删除(如果不想这样,可以用 copy 命令)。
- 假如是远程文件被删除,只要本地文件还在,rclone sync 会再次把此文件推到远程。
常用命令
## 复制本地 /mnt/user/Public 到远程 /unraid/Public 下,已经存在的文件会被跳过
rclone copy /mnt/user/Public remote:/unraid/Public
## 移动本地 /mnt/user/file 到远程 /unraid/ 目录下
rclone move /mnt/user/file remote:/unraid/file
## 使远程 /unraid/Public 和本地 /mnt/user/Public 保持一致,不会修改本地文件
rclone sync /mnt/user/Public remote:/unraid/Public
## 为了防止误删文件,可以先用check查看不一样的文件。
rclone check path1: path2: