如何把 Google 云端硬盘当做虚拟磁盘一样挂载到 Linux
创始人
2024-03-02 01:53:19
0

Google 云端硬盘 是全球比较受欢迎的云存储平台. 直到 2017 年, 全球有超过 8 亿的活跃用户在使用它。即使用户数在持续增长,但直到现在 Google 还是没有发布一款可以在 Linux 平台使用的客户端。但这难不倒 Linux 社区。不时就有一些开发者给 Linux 操作系统带来一些客户端。下面我将会介绍三个用于 Linux 系统非官方开发的 Google 云端硬盘客户端。使用这些客户端,你能把 Google 云端硬盘像虚拟磁盘一样挂载到 Linux 系统。请继续阅读。

1、Google-drive-ocamlfuse

google-drive-ocamlfuse 把 Google 云端硬盘当做是一个 FUSE 类型的文件系统,它是用 OCam 语言写的。FUSE 意即 用户态文件系统 Filesystem in Userspace ,此项目允许非管理员用户在用户空间创建虚拟文件系统。google-drive-ocamlfuse 可以让你把 Google 云端硬盘当做磁盘一样挂载到 Linux 系统。支持对普通文件和目录的读写操作,支持对 Google dock、表单和演示稿的只读操作,支持多个 Googe 云端硬盘用户,重复文件处理,支持访问回收站等等。

安装 google-drive-ocamlfuse

google-drive-ocamlfuse 能在 Arch 系统的 AUR 上直接找到,所以你可以使用 AUR 助手程序,如 Yay 来安装。

$ yay -S google-drive-ocamlfuse

在 Ubuntu 系统:

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

安装最新的测试版本:

$ sudo add-apt-repository ppa:alessandro-strada/google-drive-ocamlfuse-beta
$ sudo apt-get update
$ sudo apt-get install google-drive-ocamlfuse

使用方法

安装完成后,直接在终端里面输入如下命令,就可以启动 google-drive-ocamlfuse 程序了:

$ google-drive-ocamlfuse

当你第一次运行该命令,程序会直接打开你的浏览器并要求你确认是否对 Google 云端硬盘的文件的操作进行授权。当你确认授权后,挂载 Google 云端硬盘所需要的配置文件和目录都会自动进行创建。

当成功授权后,你会在终端里面看到如下的信息。

Access token retrieved correctly.

好了,我们可以进行下一步操作了。关闭浏览器并为我们的 Google 云端硬盘创建一个挂载点吧。

$ mkdir ~/mygoogledrive

最后操作,使用如下命令挂载 Google 云端硬盘:

$ google-drive-ocamlfuse ~/mygoogledrive

恭喜你了!你可以使用终端或文件管理器来访问 Google 云端硬盘里面的文件了。

使用终端:

$ ls ~/mygoogledrive

使用文件管理器:

如何你有不止一个账户,可以使用 label 命令对其进行区分不同的账户,就像下面一样:

$ google-drive-ocamlfuse -label label [mountpoint]

当操作完成后,你可以使用如下的命令卸载 Google 云端硬盘:

$ fusermount -u ~/mygoogledrive

获取更多信息,你可以参考 man 手册。

$ google-drive-ocamlfuse --help

当然你也可以看看官方文档和该项目的 GitHub 项目以获取更多内容。

2. GCSF

GCSF 是基于 Google 云端硬盘的 FUSE 文件系统,使用 Rust 语言编写。GCSF 得名于罗马尼亚语中的“ G oogle C onduce S istem de F ișiere”,翻译成英文就是“Google Drive Filesystem”(即 Google 云端硬盘文件系统)。使用 GCSF,你可以把 Google 云端硬盘当做虚拟磁盘一样挂载到 Linux 系统,可以通过终端和文件管理器对其进行操作。你肯定会很好奇,这到底与其它的 Google 云端硬盘 FUSE 项目有什么不同,比如 google-drive-ocamlfuse。GCSF 的开发者回应 Reddit 上的类似评论:“GCSF 意在某些方面更快(递归列举文件、从 Google 云端硬盘中读取大文件)。当文件被缓存后,在消耗更多的内存后,其缓存策略也能让读取速度更快(相对于 google-drive-ocamlfuse 4-7 倍的提升)”。

安装 GCSF

GCSF 能在 AUR 上面找到,对于 Arch 用户来说直接使用 AUR 助手来安装就行了,例如Yay

$ yay -S gcsf-git

对于其它的发行版,需要进行如下的操作来进行安装。

首先,你得确认系统中是否安装了Rust语言。

确保 pkg-configfuse 软件包是否安装了。它们在绝大多数的 Linux 发行版的默认仓库中都能找到。例如,在 Ubuntu 及其衍生版本中,你可以使用如下的命令进行安装:

$ sudo apt-get install -y libfuse-dev pkg-config

当所有的依赖软件安装完成后,你可以使用如下的命令来安装 GCSF:

$ cargo install gcsf

使用方法

首先,我们需要对 Google 云端硬盘的操作进行授权,简单输入如下命令:

$ gcsf login ostechnix

你必须指定一个会话名称。请使用自己的会话名称来代 ostechnix。你会看到像下图的提示信息和Google 云端硬盘账户的授权验证连接。

直接复制并用浏览器打开上述 URL,并点击 “allow” 来授权访问你的 Google 云端硬盘账户。当完成授权后,你的终端会显示如下的信息。

Successfully logged in. Credentials saved to "/home/sk/.config/gcsf/ostechnix".

GCSF 会把配置保存文件在 $XDG_CONFIG_HOME/gcsf/gcsf.toml,通常位于 $HOME/.config/gcsf/gcsf.toml。授权凭证也会保存在此目录当中。

下一步,创建一个用来挂载 Google 云端硬盘的目录。

$ mkdir ~/mygoogledrive

之后,修改 /etc/fuse.conf 文件:

$ sudo vi /etc/fuse.conf

注释掉以下的行,以允许非管理员用 allow_otherallow_root 挂载选项来挂载。

user_allow_other

保存并关闭文件。

最后一步,使用如下命令挂载 Google 云端硬盘:

$ gcsf mount ~/mygoogledrive -s ostechnix

示例输出:

INFO gcsf > Creating and populating file system...
INFO gcsf > File sytem created.
INFO gcsf > Mounting to /home/sk/mygoogledrive
INFO gcsf > Mounted to /home/sk/mygoogledrive
INFO gcsf::gcsf::file_manager > Checking for changes and possibly applying them.
INFO gcsf::gcsf::file_manager > Checking for changes and possibly applying them.

重复一次,使用自己的会话名来更换 ostechnix。你可以使用如下的命令来查看已经存在的会话:

$ gcsf list
Sessions:
- ostechnix

你现在可以使用终端和文件管理器对 Google 云端硬盘进行操作了。

使用终端:

$ ls ~/mygoogledrive

使用文件管理器:

如果你不知道自己把 Google 云端硬盘挂载到哪个目录了,可以使用 df 或者 mount 命令,就像下面一样。

$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 968M 0 968M 0% /dev
tmpfs 200M 1.6M 198M 1% /run
/dev/sda1 20G 7.5G 12G 41% /
tmpfs 997M 0 997M 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 997M 0 997M 0% /sys/fs/cgroup
tmpfs 200M 40K 200M 1% /run/user/1000
GCSF 15G 857M 15G 6% /home/sk/mygoogledrive

$ mount | grep GCSF
GCSF on /home/sk/mygoogledrive type fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000,allow_other)

当操作完成后,你可以使用如下命令来卸载 Google 云端硬盘:

$ fusermount -u ~/mygoogledrive

浏览GCSF GitHub 项目以获取更多内容。

3、Tuxdrive

Tuxdrive 也是一个非官方 Linux Google 云端硬盘客户端。我们之前有写过一篇关于 Tuxdrive 比较详细的使用方法。可以查看如下链接:

当然,之前还有过其它的非官方 Google 云端硬盘客户端,例如 Grive2、Syncdrive。但它们好像都已经停止开发了。当有更受欢迎的 Google 云端硬盘客户端出现,我会对这个列表进行持续的跟进。

谢谢你的阅读。


via: https://www.ostechnix.com/how-to-mount-google-drive-locally-as-virtual-file-system-in-linux/

作者:SK 选题:lujun9972 译者:sndnvaps 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

谷歌 Gemini AI ...
IT之家 9 月 7 日消息,谷歌现已正式公布 Gemini AI...
2025-09-07 21:15:22
Google Pixel ...
Google Pixel,在当今的市场中确实是一款非常独特的手机。...
2025-08-30 11:43:23
AI“看图”时的致命盲点,...
IT之家 8 月 26 日消息,科技媒体 bleepingcomp...
2025-08-26 08:43:28
有望代表未来票务平台趋势:...
IT之家 8 月 16 日消息,谷歌现已在其航班搜索比价平台 Go...
2025-08-16 18:46:19
Google 这款免费 A...
在不久前结束的 Google I/O 上,Google 悄咪咪地在...
2025-06-16 07:41:52
谷歌突袭发布AI应用,无需...
本播客由扣子空间(coze.cn)一键生成 整理|冬梅 近日,据...
2025-06-02 16:42:20

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...