Rclone同步Linux数据到google云盘

文章目录

Rclone管理云存储

Rclone(Remote Clone)是一款开源的命令行工具,用于管理云存储和本地文件系统之间的文件同步、传输和加密。它支持超过 70 种存储服务(如 Google Drive、Dropbox、Amazon S3、OneDrive、Backblaze B2 等),并提供了类似 Unix 命令(如 cp、mv、ls)的操作方式,适合自动化备份、数据迁移和远程文件管理。

资源

Rclone安装和使用说明

安装rclone

在大多数Linux发行版上安装rclone:

bash 复制代码
# 使用curl安装(通用方法)
curl https://rclone.org/install.sh | sudo bash

# 或者使用包管理器
# Debian/Ubuntu
sudo apt install rclone

# CentOS/RHEL
sudo yum install rclone

配置rclone连接到云盘

运行配置命令:

bash 复制代码
rclone config

按照提示选择云存储类型(如Google Drive、OneDrive、Dropbox等),然后按照授权流程完成设置。

基本备份命令

  • 简单复制
bash 复制代码
rclone copy /本地/目录 远程名称:远程路径
  • 同步(保持两边一致)
bash 复制代码
rclone sync /本地/目录 远程名称:远程路径
  • 带进度显示的复制
bash 复制代码
rclone copy -P /本地/目录 远程名称:远程路径

高级备份选项

  • 增量备份(只复制更改的文件)
bash 复制代码
rclone copy --update /本地/目录 远程名称:远程路径
  • 排除特定文件或目录
bash 复制代码
rclone copy --exclude "*.tmp" --exclude "/cache/**" /本地/目录 远程名称:远程路径
  • 设置带宽限制
bash 复制代码
rclone copy --bwlimit 1M /本地/目录 远程名称:远程路径

自动化备份

创建cron任务实现定期备份

  • 编辑crontab:
bash 复制代码
crontab -e
  • 添加类似如下内容(每天凌晨3点执行备份):
bash 复制代码
0 3 * * * /usr/bin/rclone sync /重要数据 远程名称:备份路径 >> /var/log/rclone.log 2>&1

加密备份(可选)

如果你需要加密云端的备份数据:

bash 复制代码
rclone config

选择"crypt"类型,然后配置加密选项。

恢复数据

从云盘恢复数据到本地:

bash 复制代码
rclone copy 远程名称:远程路径 /本地/恢复目录

常见云存储服务名称

在rclone配置中,常用云服务的名称如下:

  • Google Drive: "drive"

  • Dropbox: "dropbox"

  • Microsoft OneDrive: "onedrive"

  • Amazon S3: "s3"

  • Alibaba Cloud OSS: "oss"

  • 腾讯云COS: "cos"

注意事项

  • 首次同步大量数据可能需要较长时间

  • 使用sync命令要小心,它会删除云盘上不存在于本地的文件

  • 对于关键数据,建议先在小规模数据上测试

  • 注意云服务商的API调用限制

通过以上步骤,你可以有效地将Linux服务器上的数据备份到各种云存储服务中。

googleCloud 平台中操作

OAuth权限请求页面(OAuth同意屏幕)创建

  • 选项API和服务 => 二级菜单OAuth权限请求页面
  • 第一次进入显示页面如下,点击开始进行创建

  • 创建完成如下

Google drive api 客户ID创建(需要先创建OAuth权限请求页面

点击菜单 => API和服务 => +启用API和服務 => 搜索google drive api选中

  • 选项API和服务器菜单,进入

  • +启用API和服务器

  • 进入到 API 库进行搜寻选择

  • 选中Google Drive API

  • 点击启用

  • 进入页面后,选择凭据 => +创建凭据 => Oauth客户端凭据

  • 创建成功,客户端ID 和秘钥用作交互验证使用

Linux(Debian)系统备份代码到云盘操作

安装Rclone

bash 复制代码
curl https://rclone.org/install.sh | sudo bash
  • 出现一下提醒说明已经安装成功
  • 在新的系统中安装时,提醒无相关解压工具,需要提取安装
bash 复制代码
sudo apt install unzip

配置config,创建远程连接

bash 复制代码
rclone config
创建一个遥控节点,并命名回车
  • 命名回车后,会列出rclone支持的存储类型选择,输入对应的类型前面的数字编号,这个数字可能不同版本不一样,本次选择的是20 Goole Drive
配置客户ID 和秘钥
选择启动权限范围,选择1
其他参数配置
  • 选择service_account_file。
    直接按回车
  • 编辑高级配置?
    输入n
  • 使用web浏览器自动验证rclone与remote?
    输入n

到这一步,需要借助window来进行授权操作

  • 下载window版本rclone,解压下载包,进入解压目录,在地址栏中出入cmd启动黑窗口,拷贝返回的命令回车
黑窗口回车后,会自动启动浏览器打开网页授权
  • 选择申请对应的google账号
  • 显示已封锁存储权限

  • 出现上面的页面,需要把当前账号加入测试名单

  • 重复上面动动作,选择对应账号 一直下一步

  • 出现这个页面,表明已经授权成功。在黑窗口中拿到授权的token

填写token
  • 在windows浏览器中授权完成后,CMD黑窗口中会获取到token,拷贝粘贴到输入位置
  • 询问是否为共享盘(团队盘),个人的不是,输入n回车
  • 最后一步选择y回车,完成操作,q退出

测试推送备份

同步传输到云盘
bash 复制代码
rclone sync ./testdir/ gg-drive:LinuxDocs
  • google云盘中可以看到对应的数据
新增附件newfile.txt,同步成功
根据后续需求,定制定时同步方案
相关推荐
A小辣椒1 天前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao2 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush43 天前
嵌入式linux学习记录十四、术语
linux·嵌入式