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,同步成功
根据后续需求,定制定时同步方案
相关推荐
apocelipes2 小时前
Linux c 运行时获取动态库所在路径
linux·c语言·linux编程
ABB自动化3 小时前
for AC500 PLCs 3ADR025003M9903的安全说明
服务器·安全·机器人
努力学习的小廉3 小时前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗3 小时前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
利刃大大3 小时前
【在线五子棋对战】二、websocket && 服务器搭建
服务器·c++·websocket·网络协议·项目
2301_793102493 小时前
Linux——MySql数据库
linux·数据库
vfvfb4 小时前
bat批量去掉本文件夹中的文件扩展名
服务器·windows·批处理·删除扩展名·bat技巧
jiunian_cn4 小时前
【Linux】centos软件安装
linux·运维·centos
藥瓿亭5 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
程序员JerrySUN5 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构