gdrive 定时备份指定文件夹到 Google Drive

1. 安装 gdrive

1
2
wget -O /usr/bin/gdrive "https://docs.google.com/uc?id=0B3X9GlR6EmbnQ0FtZmJJUXEyRTA&export=download"
chmod +x /usr/bin/gdrive

2. 授权

1
gdrive about
  • 回车后,会返回一个 url 地址,复制地址到浏览器打开,用谷歌账号授权后会有一个返回码,拷贝到命令行,然后回车即可。 gdrive about

3. 在 Google drive 创建目录

1
gdrive mkdir a/b/c
  • 创建成功后会返回一个 id,记下这个 id

4. 新增定时执行脚本

创建一个本地脚本, googledrive.sh,注意添加 crontab 时,需要修改脚本的目录,内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/bash

### 本地同步的目录
local_dir="xxxxxx"
### 上一步返回的 id
remote_id="iddidididd";
# gdrive mkdir xxx
# 创建成功会返回文件夹ID,记录下此ID。

LocalDIRPath="$local_dir";
RemotePath="$remote_id"
Args="--keep-local --delete-extraneous";
gdrive sync upload ${Args} ${LocalDIRPath} ${RemotePath};

# crontab -e
# 0 */1 * * * sh /xxxxxxxx/googledrive.sh

5. 增加定时器

crontab -e, 编辑crontab,插入脚本的最后一行,每一个小时同步一次。

Just for my love !!