2021年10月2日星期六

Rclone怎么挂载?Rclone挂载谷歌团队共享云盘远程同步

原文链接:https://www.chenweiliang.com/cwl-1966.html



本文是《WordPress建站教程》系列文章的第 21 部分,该系列共包含以下 21 个部分:

如何把申请到的Google Driver团队盘挂载到自己的VPS服务器上,达到扩容和文件管理的目的?


Rclone怎么挂载?Rclone挂载谷歌团队共享云盘远程同步


全文唯一的难点就是Rclone创建远程,其中步骤多一点,但并不复杂和困难。


例如那些浮躁怕麻烦的人,表示都能应付,相信很多人都能驾驭。


如何安装Rclone?


使用官方安装脚本文件 ▼


curl https://rclone.org/install.sh | bash

输入命令测试是否安装成功 ▼


rclone

  • 显示的help信息,说明安装成功。

如何配置Rclone?


安装完成后,开始配置添加新的挂载开始▼


rclone config

如何选择远程Remote创建的类型?


看清楚后,选择 Google Drive 的选项。


不过,rclone更新后,可能选项数字会有变化。


因为连接的是谷歌团队云盘,所以这里选择13 ▼


Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / 1Fichier
\ "fichier"
2 / Alias for an existing remote
\ "alias"
3 / Amazon Drive
\ "amazon cloud drive"
4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
\ "s3"
5 / Backblaze B2
\ "b2"
6 / Box
\ "box"
7 / Cache a remote
\ "cache"
8 / Citrix Sharefile
\ "sharefile"
9 / Dropbox
\ "dropbox"
10 / Encrypt/Decrypt a remote
\ "crypt"
11 / FTP Connection
\ "ftp"
12 / Google Cloud Storage (this is not Google Drive)
\ "google cloud storage"
13 / Google Drive
\ "drive"
14 / Google Photos
\ "google photos"
15 / Hubic
\ "hubic"
16 / In memory object storage system.
\ "memory"
17 / JottaCloud
\ "jottacloud"
18 / Koofr
\ "koofr"
19 / Local Disk
\ "local"
20 / Mail.ru Cloud
\ "mailru"
21 / Mega
\ "mega"
22 / Microsoft Azure Blob Storage
\ "azureblob"
23 / Microsoft OneDrive
\ "onedrive"
24 / OpenDrive
\ "opendrive"
25 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
\ "swift"
26 / Pcloud
\ "pcloud"
27 / Put.io
\ "putio"
28 / QingCloud Object Storage
\ "qingstor"
29 / SSH/SFTP Connection
\ "sftp"
30 / Sugarsync
\ "sugarsync"
31 / Transparently chunk/split large files
\ "chunker"
32 / Union merges the contents of several remotes
\ "union"
33 / Webdav
\ "webdav"
34 / Yandex Disk
\ "yandex"
35 / http Connection
\ "http"
36 / premiumize.me
\ "premiumizeme"
Storage> 13 # 选择13,看好是选Google Drive这个选项,rclone更新以后可能选项的数字会有变化
** See help for drive backend at: https://rclone.org/drive/ **

填写谷歌 Client Id & Client Secret


当然,如果觉得麻烦,可以直接按 Enter 并使用 RCLONE 自己的 Client Id 生成 remote配置。


然而,这有缺点,Rclone官方也表示。


因为ClientId和ClientSecret使用率太高,很多人都在用。


Google 对每个客户端应用程序都有一个有限的流量,当一群人挤在一起使用它时会发生什么? 自己想象一下(每天最大流量750G)。


  • 所以,最好是自己注册谷歌客户端googleApi。

  • 接回车就行了,反正以后可以修改添加。

你先需要进入到Google  API中心创建一个项目获取一个API,应用类型就选择“其他” ▼


你先需要进入到Google  API中心创建一个项目获取一个API,类型就选择“其他”


Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a string value. Press Enter for the default ("").
client_id> # 回车
Google Application Client Secret
Setting your own is recommended.
Enter a string value. Press Enter for the default ("").
client_secret> # 回车

如何选择操作权限?


如果自己用的话,直接选1,获取所有权限 ▼


Scope that rclone should use when requesting access from drive.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / Full access all files, excluding Application Data Folder.
\ "drive"
2 / Read-only access to file metadata and file contents.
\ "drive.readonly"
/ Access to files created by rclone only.
3 | These are visible in the drive website.
| File authorization is revoked when the user deauthorizes the app.
\ "drive.file"
/ Allows read and write access to the Application Data folder.
4 | This is not visible in the drive website.
\ "drive.appfolder"
/ Allows read-only access to file metadata but
5 | does not allow any access to read or download file content.
\ "drive.metadata.readonly"
scope> 1 # 选1 回车

根目录如何设置?


不使用这个设置,直接回车 ▼


ID of the root folder
Leave blank normally.

Fill in to access "Computers" folders (see docs), or for rclone to use
a non root folder as its starting point.

Note that if this is blank, the first time rclone runs it will fill it
in with the ID of the root folder.

Enter a string value. Press Enter for the default ("").
root_folder_id> # 回车
Service Account Credentials JSON file path
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Enter a string value. Press Enter for the default ("").
service_account_file> # 回车

谷歌账号如何授权?


就是用自己的谷歌授权给开发者创建一个客户端应用,授权它连接和操作你的谷歌网盘,安全运行,放心。


复制网址,并在网络浏览器中打开 ▼


Please go to the following link: https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=322604643123-ru3spb69lmg3nmo1gr1uqf1etb32tbs2.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&state=tvtLIvwU8axrPSDxWXbIpg
Log in and authorize rclone for access
Enter verification code> # 授权码每个人都不一样,following link 也不一样。

(首先你要绕过X墙,然后需要有谷歌账号并登录),点击允许授权,会出现授权码,点击复制,粘贴过去。


是否配置谷歌团队共享云盘?


因为使用的是谷歌团队共享云盘,当然选y


Log in and authorize rclone for access
Enter verification code> 4/0AGPbXQ9thkw4XynGuNP91QxL4g9Mz7Rubv7M_lajOCwd8GqHuTlOzI
Configure this as a team drive?
y) Yes
n) No (default)
y/n> y

如何选择要挂载的谷歌团队共享云端硬盘?


谷歌团队共享云端硬盘就是一个文件夹,一个文件夹算一个团队盘。


因为我有两张团队盘,名为CWL-X,


所以,这里可以看到两个选项,一个remote配置只能绑定一个团队盘。


以后可多做几个remote,挂载这些团队盘。


Fetching team drive list...
Choose a number from below, or type in your own value
1 / CWL-1
\ "xxxx"
2 / CWL-2
\ "xxxx"
Enter a Team Drive ID> # 每个人都不一样,根据自己需求选择要绑定哪一个团队盘

核实remote配置信息


最后核实一下remote配置的各项参数,确认就敲个y就行 ▼


--------------------
[CWL-2]
type = drive
client_id = XXX
client_secret = XXX
scope = drive
token = XXX
team_drive = XXX
--------------------
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

会显示当前机器上保存的romete列表,随便看看,按q退出 ▼


Current remotes:

Name Type
==== ====
CWL-2 drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q

  • 至此,rclone配置完成。

如何将 Google 磁盘映射到文件夹?


# 找个位置,命令创建空文件夹:mkdir  # 新建本地文件夹,路径自己定,即下面的LocalFolder 例如: mkdir /home/gdDisk/CWL-2 # 挂载为磁盘,下面的DriveName、Folder、LocalFolder参数根据说明自行替换 rclone mount DriveName:Folder LocalFolder --copy-links --no-gzip-encoding # 例如: rclone mount CWL-2:RXFiles /home/gdDisk/CWL-2 \  --no-check-certificate \  --no-gzip-encoding \  --copy-links \  --umask 0000 \  --default-permissions \  --allow-non-empty \  --allow-other \  --transfers 1 \  --buffer-size 64M \  --low-level-retries 200 \  --dir-cache-time 12h \  --vfs-read-chunk-size 32M \  --vfs-read-chunk-size-limit 1G # 对部分参数解释一下 DriveName:就是之前用rclone创建remote的名称 Folder:自己定,也可以不改。凡是rclone上传的文件都会在该谷歌团队盘的下一个名为“Folder”的文件夹里 LocalFolder:本地的绝对路径 比如 /home/gdDisk/CWL-2 # 如果涉及到读取使用,比如使用H5等在线播放,就在后面多加上以下三条参数 --dir-cache-time 12h --vfs-read-chunk-size 32M --vfs-read-chunk-size-limit 1G # 优化参数 --transfers:该参数是最大同时传输任务数量,如果经常传输大文件,或CPU性能不佳,建议设置为单线程,也就是设置为“1” --buffer-size:该参数为读取每个文件时的内存缓冲区大小,控制rclone上传和挂载的时候的内存占用 --low-level-retries:该参数为传输文件没速度的时候重试次数,没速度的时候,单个会自动睡眠10ms起,然后再重试 -n = --dry-run - 测试运行,用来查看 rclone 在实际运行中会进行哪些操作。 -P = --progress - 显示实时传输进度,500mS 刷新一次,否则默认 1 分钟刷新一次。 --cache-chunk-size SizeSuffi - 块的大小,默认5M,理论上是越大上传速度越快,同时占用内存也越多。如果设置得太大,可能会导致进程中断。 --cache-chunk-total-size SizeSuffix - 块可以在本地磁盘上占用的总大小,默认10G。 --transfers=N - 并行文件数,默认为4。在比较小的内存的VPS上建议调小这个参数,比如128M的小鸡上使用建议设置为1。 --config string - 指定配置文件路径,string为配置文件路径。 --ignore-errors - 跳过错误。比如 OneDrive 在传了某些特殊文件后会提示Failed to copy: failed to open source object: malwareDetected: Malware detected,这会导致后续的传输任务被终止掉,此时就可以加上这个参数跳过错误。但需要注意 RCLONE 的退出状态码不会为0。

在终端输入mount命令并回车后,很多人以为卡住了。


其实并不是因为挂载程序是在前台运行的。


这时候再打开一个终端或者ssh输入命令查看映射是否成功 ▼


df -h

就可以看到你挂载的谷歌云端硬盘,大小为1PB ▼


### 文件上传
rclone copy /home/backup gdrive:backup # 本地路径 配置名字:网盘文件夹路径
### 文件下载
rclone copy gdrive:backup /home/backup # 配置名字:网盘文件夹路径 本地路径
### 新建文件夹
rclone mkdir gdrive:backup # 配置名字:网盘文件夹路径
### 获取文件夹大小
rclone size gdrive:backup # 配置名字:网盘文件夹路径

### 列表
rclone ls gdrive:backup
rclone lsl gdrive:backup # 比上面多一个显示上传时间
rclone lsd gdrive:backup # 只显示文件夹
### 挂载
rclone mount gdrive:mm /root/mm &
### 卸载
fusermount -u /root/mm

#### 其他 ####
rclone config - 以控制会话的形式添加rclone的配置,配置保存在.rclone.conf文件中。
rclone copy - 将文件从源复制到目的地址,跳过已复制完成的。
rclone sync - 将源数据同步到目的地址,只更新目的地址的数据。 –dry-run标志来检查要复制、删除的数据
rclone move - 将源数据移动到目的地址,如果要在移动后删除空源目录,请加上 --delete-empty-src-d
rclone delete - 删除指定路径下的文件内容。
rclone purge - 清空指定路径下所有文件数据。
rclone mkdir - 创建一个新目录。
rclone rmdir - 删除空目录。
rclone rmdirs - 删除指定灵境下的空目录。如果加上 --leave-root 参数,则不会删除根目录。
rclone check - 检查源和目的地址数据是否匹配。
rclone ls - 列出指定路径下所有的文件以及文件大小和路径。
rclone lsd - 列出指定路径下所有的目录/容器/桶。
rclone lsl - 列出指定路径下所有文件以及修改时间、文件大小和路径。
rclone lsf - 列出指定路径下所有文件和目录
rclone md5sum - 为指定路径下的所有文件产生一个md5sum文件。
rclone sha1sum - 为指定路径下的所有文件产生一个sha1sum文件。
rclone size - 获取指定路径下,文件内容的总大小。.
rclone version - 查看当前版本。
rclone cleanup - 清空remote。
rclone dedupe - 交互式查找重复文件,进行删除/重命名操作。
fusermount -qzu 挂载网盘的文件夹绝对路径 - 取消挂载网盘,不用了以后一定要取消哦。

Rclone挂载如何后台运行谷歌云端团队网盘?


挂载为磁盘,加&保持后台运行 ▼


rclone mount DriveName:Folder LocalFolder --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 &

  • 说明一下:rclone mount 你之前填写的谷歌团队云盘的名称:团队盘里任意存在的目录名 /root/Gdrive 指的是刚才新建的本地挂载目录的路径,--则是挂载方式, &是后台运行

supervisor


  • 任何可以后台运行的方法都可以做到。

supervisor

  • 好棒,复杂但是功能强大。

nohup


  • 搜索nphup的用法,满大街都是。

nohup

  • 后面是要执行的命令,注意&前后的空格。

screen


一般Linux系统都会自带screen,如果没有安装,使以下命令 ▼


sudo apt-get install screen

或者 CentOS 的命令▼


sudo yum install screen

新建一个名为CWL-1的窗口,在窗口中执行命令 ▼


screen -S CWL-1 rclone mount CWL-2:RXFiles /home/ gdDisk/CWL-2 

  • 后面有一堆参数。

  • 建议创建一个sh文件来管理screen,这个扩展名就不再赘述了。

卸载 ▼


fusermount-qzu LocalFolder

  • 此处示例为fusermount -qzu /root/Gdrive

rclone如何开机自启动?


systemctl


新建一个rclone.server文件,Ubuntu 18.04中:


vim /lib/systemd/system/rclone.service

写入以下内容:


#### https://www.chenweiliang.com/cwl-1966.html
[Unit]
Description=rclone

[Service]
User=root
ExecStart=/usr/bin/rclone mount DriveName:RemoteFolder LocalFolder --allow-other --allow-non-empty --vfs-cache-mode writes --config /home/br/.config/rclone/rclone.conf
Restart=on-abort

[Install]
WantedBy=multi-user.target

  • 注意修改DriveName、RemoteFolder和LocalFolder的值。

然后重载daemon,使新的服务生效 ▼


systemctl daemon-reload 

设置rclone开机启动


开机自启动rclone ▼


systemctl enable rclone

启动rclone ▼


systemctl start rclone

重启rclone ▼


systemctl restart rclone

停止rclone ▼


systemctl stop rclone

查询rclone状态 ▼


systemctl status rclone

结语


Rclone挂载谷歌团队共享云盘非常方便,尤其是在同步备份上,可以轻松同步网站的数据。


而且如果你有多个谷歌谷歌团队共享云盘,你也可以使用Rclone相互复制文件。


  • Rclone 支持挂载基本上是国外的网盘。

  • Rclone 的 SFTP 挂载也可以用作备份工具。

  • 如果有中国大陆VPS想用,可以用SFTP、FTP、HTTP挂载,整合不同的服务器存储。

VPS使用Rclone自动同步教程请看这里 ▼






欢迎转载《Rclone怎么挂载?Rclone挂载谷歌团队共享云盘远程同步

欢迎分享本文链接:https://www.chenweiliang.com/cwl-1966.html


网站地址:https://www.chenweiliang.com/



欲获取更多资讯内幕和秘技,欢迎进入Telegram频道:https://www.chenweiliang.com/go/tgchannel

没有评论:

发表评论