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,同步成功
根据后续需求,定制定时同步方案
相关推荐
天上掉下来个程小白9 分钟前
Docker-14.项目部署-DockerCompose
运维·docker·微服务·容器
花小璇学linux22 分钟前
imx6ull-驱动开发篇22——Linux 时间管理和内核定时器
linux·运维·驱动开发
1892280486137 分钟前
NY270NY273美光固态闪存NY277NY287
服务器·网络·数据库·科技·性能优化
你好,赵志伟2 小时前
Socket 编程 TCP
linux·服务器·tcp/ip
Liang_GaRy3 小时前
心路历程-三个了解敲开linux的大门
linux·运维·服务器
星霜笔记4 小时前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
一只栖枝7 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
wuicer9 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
玩转以太网10 小时前
基于W55MH32Q-EVB 实现 HTTP 服务器配置 OLED 滚动显示信息
服务器·网络协议·http
cui__OaO11 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习