支持Windows、macOS、Linux系统的数据增量备份工具-rclone 可备份到云存储、FTP、WebDAV等多种存储介质平台
rclone
是一个强大的命令行工具,支持在 Windows、macOS 和 Linux 系统上进行数据备份。它可以将数据备份到多种存储平台,包括云存储(如 Google Drive、Amazon S3、Dropbox 等)、FTP、WebDAV 等。rclone
提供了丰富的功能和灵活的配置选项,适用于个人用户和企业级数据备份需求。rclone
开源地址:https://github.com/rclone/rclone
功能特点
- 跨平台支持:支持 Windows、macOS 和 Linux 系统。
- 多种存储平台支持:支持备份到 Google Drive、Amazon S3、Dropbox、FTP、WebDAV 等多种存储平台。
- 增量备份:支持增量备份,只备份发生变化的文件,节省时间和带宽。
- 加密传输:支持数据加密传输,确保数据安全。
- 自动化备份:可以通过脚本或定时任务实现自动化备份。
- 版本控制:支持文件版本控制,可以恢复到之前的版本。
- 断点续传:支持断点续传,避免因网络中断导致备份失败。
安装与配置
安装
以下教程中找不到的官装包,可以去以下三个地址寻找安装包.个人推荐github
官方下载最新版:https://rclone.org/downloads/
官网历史版本:https://downloads.rclone.org
github历史版本:https://github.com/rclone/rclone/releases
Windows
下载
rclone
的 Windows 安装包。# x86_64位 https://downloads.rclone.org/rclone-current-windows-amd64.zip # arm芯片 64位 https://downloads.rclone.org/rclone-current-windows-arm64.zip # i386/32位 https://downloads.rclone.org/rclone-current-windows-386.zip
- 运行安装包,按照提示完成安装。
macOS
使用 Homebrew 安装:
brew install rclone
下载安装
# intel 64位的下载 curl -O https://downloads.rclone.org/rclone-current-osx-amd64.zip # M系列的下载 curl -O https://downloads.rclone.org/rclone-current-osx-arm64.zip sudo cp rclone /usr/bin/ sudo chmod +x /usr/bin/rclone
Linux
使用包管理器安装:
sudo apt-get install rclone # Debian/Ubuntu sudo yum install rclone # CentOS/RHEL
下载自定义安装
# x86_64 curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip # arm64 curl -O https://downloads.rclone.org/rclone-current-linux-arm.zip # 解压下载的文件(根据自己的实际文件名、目录名操作) unzip rclone-current-linux-*.zip cd rclone-*-linux-amd64
拷贝文件
sudo cp rclone /usr/local/bin/ sudo chown root:root /usr/local/bin/rclone sudo chmod 755 /usr/local/bin/rclone
配置
初始化配置:
rclone config
按照提示进行配置,选择要备份的存储平台并输入相应的认证信息。
配置文件存储路径:
rclone config file
配置文件通常存储在
~/.config/rclone/rclone.conf
。显示配置文件内容
rclone config show
命令语法
# 本地到网盘
rclone [功能选项] <本地路径> <网盘名称:路径> [参数] [参数] ...
# 网盘到本地
rclone [功能选项] <网盘名称:路径> <本地路径> [参数] [参数] ...
# 网盘到网盘
rclone [功能选项] <网盘名称:路径> <网盘名称:路径> [参数] [参数] ...
常用功能选项
rclone copy – 复制
rclone move – 移动,如果要在移动后删除空源目录,请加上 --delete-empty-src-dirs 参数
rclone sync – 同步:将源目录同步到目标目录,只更改目标目录。
rclone size – 查看网盘文件占用大小。
rclone delete – 删除路径下的文件内容。
rclone purge – 删除路径及其所有文件内容。
rclone mkdir – 创建目录。
rclone rmdir – 删除目录。
rclone rmdirs – 删除指定灵境下的空目录。如果加上 --leave-root 参数,则不会删除根目录。
rclone check – 检查源和目的地址数据是否匹配。
rclone ls – 列出指定路径下的所有的文件以及文件大小和路径。
rclone lsl – 比上面多一个显示上传时间。
rclone lsd 列出指定路径下的目录
rclone lsf – 列出指定路径下的目录和文件
常用参数
-n = --dry-run – 测试运行,用来查看 rclone 在实际运行中会进行哪些操作。
-P = --progress – 显示实时传输进度,500mS 刷新一次,否则默认 1 分钟刷新一次。
--cache-chunk-size SizeSuffi – 块的大小,默认5M,理论上是越大上传速度越快,同时占用内存也越多。如果设置得太大,可能会导致进程中断。
--cache-chunk-total-size SizeSuffix – 块可以在本地磁盘上占用的总大小,默认10G。
--transfers=N – 并行文件数,默认为4。在比较小的内存的VPS上建议调小这个参数,比如128M的小鸡上使用建议设置为1。
--config string – 指定配置文件路径,string为配置文件路径。
--ignore-errors – 跳过错误。比如 OneDrive 在传了某些特殊文件后会提示Failed to copy: failed to open source object: malwareDetected: Malware detected,这会导致后续的传输任务被终止掉,此时就可以加上这个参数跳过错误。但需要注意 RCLONE 的退出状态码不会为0。
日志
rclone 有 4 个级别的日志记录,ERROR,NOTICE,INFO 和 DEBUG。默认情况下,rclone 将生成 ERROR 和 NOTICE 级别消息。
-q – rclone将仅生成 ERROR 消息。
-v – rclone将生成 ERROR,NOTICE 和 INFO 消息,推荐此项。
-vv – rclone 将生成 ERROR,NOTICE,INFO和 DEBUG 消息。
--log-level LEVEL – 标志控制日志级别。
输出日志到文件
使用–log-file=FILE
选项,rclone 会将 Error,Info 和 Debug 消息以及标准错误重定向到 FILE,这里的 FILE 是你指定的日志文件路径。
另一种方法是使用系统的指向命令,比如:
rclone sync -v Onedrive:/DRIVEX Gdrive:/DRIVEX > "~/DRIVEX.log" 2>&1
文件过滤
--exclude fileName #指定排队文件,支持*
--exclude-from excludes.txt #从excludes.txt中读取要排除的文件或目录
--include "/{Video,Software}/**" #仅包含根目录下的 Video 和 Software 目录的所有,当然也可以指定单个文件
--include-from includes.txt #从includes.txt中读取要备份的文件或目录
带有-from
的话就是将要排队或指定的文章写在一个文本中,一行一个
查看远程文件夹的体积占用大小
rclone size remote:path
挂载为本地磁盘
windows使用rclone挂载为本地磁盘需要先安装winfsp,下载地址:https://winfsp.dev/rel/
挂载命令
linux或macOS
rclone mount remote:path/to/files /path/to/local/mount
windows
rclone.exe mount minio:backup X: --volname BACKUP
使用示例
备份本地文件到 Google Drive
rclone copy /path/to/local/folder remote:backup_folder
备份本地文件到 FTP
rclone copy /path/to/local/folder ftp:backup_folder
备份本地文件到 WebDAV
rclone copy /path/to/local/folder webdav:backup_folder
增量备份
rclone sync /path/to/local/folder remote:backup_folder
增量备份本地文件到 腾讯云或阿里云的对象存储中
冒号后是存储桶的名字
如果你不写目录名,则会是根目录
,它会删除
以前你存放的文件,所以最好是指定一个新目录...
rclone copy /path/to/local/folder 配置名:存储桶名称/目录
加密备份
rclone sync /path/to/local/folder remote:backup_folder --crypt-remote=remote:encrypted_backup_folder
图形管理 GUI
rclone rcd --rc-web-gui
# 可选参数
--rc-user gui #指定账号
--rc-pass <random password> #指定密码
--rc-serve #服务
--rc-addr :443 #指定端口
--rc-htpasswd /path/to/htpasswd #如果不指定账号密码,可以使用htpasswd密码本
--rc-cert /path/to/ssl.crt #https的证书
--rc-key /path/to/ssl.key #https的证书密钥
- 终端输入
rclone rcd --rc-web-gui
rclone将下载并在Web浏览器中显示GUI - 当前状态不知道账号密码,我们添加上账号密码
rclone rcd --rc-web-gui --rc-user lvtao --rc-pass lvtao.net
- 如果你是本地运行,它会自动打开你的浏览器
- 登录后工作台
- 添加一个腾讯云的.. 这儿是只要符合S3协议的都选它
- ~额...好吧...我们还是命令行添加吧... 这个复杂的看着晕菜...完全不像命令行中一样分层级的配置~
- 嗯...如果是在服务器上,然后我添加一个域名反代,登录窗口就可以用
反代域名/#/login
来访问
版权声明:本文为原创文章,版权归 全栈开发技术博客 所有。
本文链接:https://www.lvtao.net/tool/rclone.html
转载时须注明出处及本声明