gdrive同步linux文件夹
这篇记录聚焦在用 rclone 将 Linux 服务器上的 /root/minio 目录同步到 Google Drive,目标是把本地 MinIO 相关文件定时备份到云端的 minio 文件夹。配置部分先从 Google Cloud Console 启用 Drive API 入手,创建 OAuth 应用后获取 client_id 和 client_secret,再在服务器上执行 rclone config 新建名为 gdrive 的 drive 类型 remote,并将 scope 设为 drive。由于运行环境是服务器,rclone 的 auto config 需要选择 N,通过命令行输出的 URL 在浏览器中登录 Google 账号授权,再把返回的 code 粘贴回终端完成认证。实际同步命令使用 rclone sync /root/minio gdrive:minio,并加入 -P 显示进度、--size-only 按文件大小判断变化、--ignore-errors 忽略部分错误,同时排除 data/.minio.sys/** 目录,避免同步 MinIO 内部系统数据。定时任务通过 crontab 每小时执行一次同样的同步命令,并将输出追加到 /root/rclone-gdrive.log,方便后续查看运行情况。文末还指出 token 会自动刷新,因此完成初始授权后无需反复手动登录,适合需要给服务器目录做轻量级 Google Drive 备份的运维或个人服务维护场景。
目录#
[[toc]]

配置信息#
Google Cloud Console 创建一个 OAuth 应用并启用 Drive API
• 获取 client_id 和 client_secret

rclone config
# n -> new remote
# name: gdrive
# type: drive
# client_id: <粘贴你刚刚复制的 client_id>
# client_secret: <粘贴 client_secret>
# scope: drive
# use auto config? 选 N (因为是服务器)
# 然后会输出一个 URL,用浏览器打开并用 Google 账号登录
# 把得到的 code 粘贴回来
https://console.cloud.google.com/auth/clients


需要启用这个 gdrive 的信息
输入命令:
rclone sync /root/minio gdrive:minio -P --size-only --ignore-errors --exclude 'data/.minio.sys/**'
定时操作:
crontab -e
0 * * * * /usr/bin/rclone sync /root/minio gdrive:minio -P --size-only --ignore-errors --exclude 'data/.minio.sys/**' >> /root/rclone-gdrive.log 2>&1
crontab -l
每小时都会自动同步 /root/minio 到 Google Drive 的 minio 文件夹,同时自动跳过 data/.minio.sys/** 目录,并且 token 会自动刷新,无需手动干预。
评论
还没有评论,来发第一个吧