google-drive-ocamlfuse,将Google Drive挂载到Linux上

Google至今没有发行Linux版本的Google Drive应用,我有一个G Suite 帐号,其实在写「网站数据备份七牛云存储实现」前我就想利用Google Drive这么大的空间来备份文件了,只不过当时觉得七牛实现也很简单方便。

最近看到了google-drive-ocamlfuse,觉得可以再倒腾一下。

写在前面:

  1. 还是自己记录性的博文,自己接触了东西容易忘记 ,不是教程,所以有的步骤不是很详尽
  2. 如果宿主机不能访问Google的话,本篇理所当然也不适用

google-drive-ocamlfuse机翻一下: 是由OCaml编写的Google Drive支持的基于FUSE的文件系统。它可让您在Linux上安装挂载Google Drive。 该项目托管在github上,您可以在这里找到最新的开发版本。

特征

  • 对普通文件和文件夹的完全读/写访问权限
  • Google文档,表格和幻灯片的只读访问权限(导出为可配置的格式)
  • 多帐户支持
  • 重复的文件处理
  • 访问垃圾(.Trash目录)
  • Unix的权限和所有权
  • 符号链接
  • 流传输时预读缓冲区

开始使用之前

安装

- 准备

新建fuse组(如果不存在)并将用户加入fuse组 sudo groupadd fuse sudo adduser user fuse 注销后重新登录,使更改生效。

  • Ubuntu下使用PPA

支持Ubuntu 14.04,16.04,17.04和17.10(i386,amd64,armhf和arm64)

PPA repository

1
2
3
sudo add-apt-repository ppa:alessandro-strada/ppa
sudo apt-get update
sudo apt-get install google-drive-ocamlfuse

PPA repository (beta versions)

1
2
3
sudo add-apt-repository ppa:alessandro-strada/google-drive-ocamlfuse-beta
sudo apt-get update
sudo apt-get install google-drive-ocamlfuse
  • 用OPAM进行安装

1.安装OPAM 以Ubuntu为例:

1
apt-get install opam

其他系统移步——>(http://opam.ocaml.org/doc/Install.html )

2.运行以及更新OPAM:

1
2
opam init
opam update

3.安装依赖项

1
2
opam install depext
opam depext google-drive-ocamlfuse

4.安装google-drive-ocamlfuse

1
opam install google-drive-ocamlfuse
  • 非Ubuntu的安装

有关其他安装选项,请参阅wiki

开始使用

申请API

Google APIS库搜索Google Drive API

创建一个OAuth 2.0 客户端 ID,应用类型选择其他

然后会得到类似下面的

客户端 ID 305766299019-xxxxx729a3ugtebaf1kfiq25s8cqeivb.apps.googleusercontent.com 客户端密钥 PEAJdRInHTVf29Kx8EaXXXXX

再通过命令行执行

1
google-drive-ocamlfuse -headless -label googledrive -id 305766299019-xxxxx729a3ugtebaf1kfiq25s8cqeivb.apps.googleusercontent.com -secret PEAJdRInHTVf29Kx8EaXXXXX

屏幕会提示

1
2
Please, open the following URL in a web browser: https://accounts.google.com/o/oauth2/auth?client_id=305766299019-xxxxx729a3ugtebaf1kfiq25s8cqeivb.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&response_type=code&access_type=offline&approval_prompt=force
Please enter the verification code: 

在浏览器打开那个网址会得到一串字符,复制粘贴此代码到verification code 4/qemZjOBy8MVI-dmaMPN3jJZ1ov_g6JbsdEeFfXXXXXX

提示Access token retrieved correctly.这个时候就可以使用了!

1
2
mkdir $HOME/GoogleDrive
google-drive-ocamlfuse -label googledrive !$

查看挂载状态:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
ubuntu@VM-120-252-ubuntu:~$ df -hl
Filesystem              Size  Used Avail Use% Mounted on
udev                    414M     0  414M   0% /dev
tmpfs                    87M  9.3M   78M  11% /run
/dev/vda1                50G  2.6G   45G   6% /
tmpfs                   433M   24K  433M   1% /dev/shm
tmpfs                   5.0M     0  5.0M   0% /run/lock
tmpfs                   433M     0  433M   0% /sys/fs/cgroup
tmpfs                    87M     0   87M   0% /run/user/500
google-drive-ocamlfuse   15G   21M   15G   1% /home/ubuntu/GoogleDrive

卸载

1
fusermount -u $HOME/GoogleDrive
Licensed under CC BY-NC-SA 4.0
最后更新于 May 08, 2019 16:54 UTC
点击刷新🚌