标签 FUSE 下的文章

不久前,我们总结了所有 在本地挂载 Google Drive 作为虚拟文件系统,并从 Linux 系统访问存储在 Google Drive 中的文件的方法。今天,我们将学习使用 dbxfs 将 Dropbox 文件夹挂载到本地文件系统中。dbxfs 用于在类 Unix 操作系统中本地挂载 Dropbox 文件夹作为虚拟文件系统。虽然在 Linux 中很容易安装 Dropbox 客户端,但这种方法与官方方法略有不同。它是一个命令行 dropbox 客户端,且无需磁盘空间即可访问。dbxfs 是自由开源的,并且是用 Python 3.5+ 编写的。

安装 dbxfs

dbxfs 官方支持 Linux 和 Mac OS。但是,它应该适用于任何提供 FUSE 兼容库或能够挂载 SMB 共享的 POSIX 系统。由于它是用 Python 3.5 编写的,因此可以使用 pip3 包管理器进行安装。如果尚未安装 pip,请参阅以下指南。

并且也要安装 FUSE 库。

在基于 Debian 的系统上,运行以下命令以安装 FUSE:

$ sudo apt install libfuse2

在 Fedora 上:

$ sudo dnf install fuse

安装完所有必需的依赖项后,运行以下命令以安装 dbxfs

$ pip3 install dbxfs

在本地挂载 Dropbox 文件夹

创建一个挂载点以将 Dropbox 文件夹挂载到本地文件系统中。

$ mkdir ~/mydropbox

然后,使用 dbxfs 在本地挂载 dropbox 文件夹,如下所示:

$ dbxfs ~/mydropbox

你将被要求生成一个访问令牌:

要生成访问令牌,只需在 Web 浏览器中输入上面输出的 URL,然后单击 允许 以授权 Dropbox 访问。你需要登录 Dropbox 帐户才能完成授权过程。

下一个页面将生成新的授权码。复制代码并返回终端将其粘贴到 cli-dbxfs 提示符中以完成该过程。

然后,系统会要求你保存凭据以供将来访问。根据你是要保存还是拒绝,输入 YN。然后,你需要为新的访问令牌输入两次密码。

最后,输入 Y 接受 /home/username/mydropbox 作为默认挂载点。如果你要设置不同的路径,输入 N 并输入你选择的位置。

Generate access token 2

完成了!从现在开始,你可以看到你的 Dropbox 文件夹已挂载到本地文件系统中。

更改访问令牌存储路径

默认情况下,dbxfs 会将 Dropbox 访问令牌存储在系统密钥环或加密文件中。但是,你可能希望将其存储在 gpg 加密文件或其他地方。如果是这样,请在 Dropbox 开发者应用控制台上创建个人应用来获取访问令牌。

创建应用后,单击下一步中的生成按钮。此令牌可用于通过 API 访问你的 Dropbox 帐户。不要与任何人共享你的访问令牌。

创建访问令牌后,使用任何你选择的加密工具对其进行加密,例如 CryptomaterCryptkeeperCryptGoCryptrTombToplip**GnuPG 等,并在你喜欢的位置保存。

接下来编辑 dbxfs 配置文件并添加以下行:

"access_token_command": ["gpg", "--decrypt", "/path/to/access/token/file.gpg"]

你可以通过运行以下命令找到 dbxfs 配置文件:

$ dbxfs --print-default-config-file

有关更多详细信息,请参阅 dbxfs 帮助:

$ dbxfs -h

如你所见,使用 dbxfs 在你的文件系统中本地挂载 Dropfox 文件夹并不复杂。经过测试,dbxfs 如常工作。如果你有兴趣了解它是如何工作的,请尝试一下,并在下面的评论栏告诉我们你的体验。

就是这些了。希望这篇文章有用。还有更多好东西。敬请期待!

干杯!


via: https://www.ostechnix.com/dbxfs-mount-dropbox-folder-locally-as-virtual-file-system-in-linux/

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

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

如果你在找一个方便的方式在 Linux 机器上挂载你的 Google Drive 文件夹, Jack Wallen 将教你怎么使用 google-drive-ocamlfuse 来挂载 Google Drive。

图片来源: Jack Wallen

Google 还没有发行 Linux 版本的 Google Drive 应用,尽管现在有很多方法从 Linux 中访问你的 Drive 文件。

如果你喜欢界面化的工具,你可以选择 Insync。如果你喜欢用命令行,有很多像 Grive2 这样的工具,以及更容易使用的以 Ocaml 语言编写的基于 FUSE 的文件系统。我将会用后面这种方式演示如何在 Linux 桌面上挂载你的 Google Drive。尽管这是通过命令行完成的,但是它的用法会简单到让你吃惊。它太简单了以至于谁都能做到。

这个系统的特点:

  • 对普通文件/文件夹有完全的读写权限
  • 对于 Google Docs,sheets,slides 这三个应用只读
  • 能够访问 Drive 回收站(.trash)
  • 处理重复文件功能
  • 支持多个帐号

让我们接下来完成 google-drive-ocamlfuse 在 Ubuntu 16.04 桌面的安装,然后你就能够访问云盘上的文件了。

安装

  1. 打开终端。
  2. sudo add-apt-repository ppa:alessandro-strada/ppa 命令添加必要的 PPA
  3. 出现提示的时候,输入你的 root 密码并按下回车。
  4. sudo apt-get update 命令更新应用。
  5. 输入 sudo apt-get install google-drive-ocamlfuse 命令安装软件。

授权

接下来就是授权 google-drive-ocamlfuse,让它有权限访问你的 Google 账户。先回到终端窗口敲下命令 google-drive-ocamlfuse,这个命令将会打开一个浏览器窗口,它会提示你登陆你的 Google 帐号或者如果你已经登陆了 Google 帐号,它会询问是否允许 google-drive-ocamlfuse 访问 Google 账户。如果你还没有登录,先登录然后点击“允许”。接下来的窗口(在 Ubuntu 16.04 桌面上会出现,但不会出现在 Elementary OS Freya 桌面上)将会询问你是否授给 gdfuse 和 OAuth2 Endpoint 访问你的 Google 账户的权限,再次点击“允许”。然后出现的窗口就会告诉你等待授权令牌下载完成,这个时候就能最小化浏览器了。当你的终端提示如下图一样的内容,你就能知道令牌下载完了,并且你已经可以挂载 Google Drive 了。

应用已经得到授权,你可以进行后面的工作。

挂载 Google Drive

在挂载 Google Drive 之前,你得先创建一个文件夹,作为挂载点。在终端里,敲下mkdir ~/google-drive命令在你的家目录下创建一个新的文件夹。最后敲下命令google-drive-ocamlfuse ~/google-drive将你的 Google Drive 挂载到 google-drive 文件夹中。

这时你可以查看本地 google-drive 文件夹中包含的 Google Drive 文件/文件夹。你可以把 Google Drive 当作本地文件系统来进行工作。

当你想卸载 google-drive 文件夹,输入命令 fusermount -u ~/google-drive

没有 GUI,但它特别好用

我发现这个特别的系统非常容易使用,在同步 Google Drive 时它出奇的快,并且这可以作为一种本地备份你的 Google Drive 账户的巧妙方式。(LCTT 译注:然而首先你得能使用……)

试试 google-drive-ocamlfuse,看看你能用它做出什么有趣的事。


via: http://www.techrepublic.com/article/how-to-mount-your-google-drive-on-linux-with-google-drive-ocamlfuse/

作者:Jack Wallen 译者:GitFuture 校对:wxy

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