歡迎光臨
每天分享高質量文章

如何把 Google 雲端硬碟當做虛擬磁盤一樣掛載到 Linux | Linux 中國

下麵我將會介紹三個用於 Linux 系統非官方開發的 Google 雲端硬碟客戶端。使用這些客戶端,你能把 Google 雲端硬碟像虛擬磁盤一樣掛載到 Linux 系統。

— Sk

 

Google 雲端硬碟[1] 是全球比較受歡迎的雲儲存平臺. 直到 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[2] 上直接找到,所以你可以使用 AUR 助手程式,如 Yay[3] 來安裝。

  1. $ yay -S google-drive-ocamlfuse

在 Ubuntu 系統:

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

安裝最新的測試版本:

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

使用方法

安裝完成後,直接在終端裡面輸入如下命令,就可以啟動 google-drive-ocamlfuse 程式了:

  1. $ google-drive-ocamlfuse

當你第一次運行該命令,程式會直接打開你的瀏覽器並要求你確認是否對 Google 雲端硬碟的檔案的操作進行授權。當你確認授權後,掛載 Google 雲端硬碟所需要的配置檔案和目錄都會自動進行創建。

當成功授權後,你會在終端裡面看到如下的信息。

  1. Access token retrieved correctly.

好了,我們可以進行下一步操作了。關閉瀏覽器併為我們的 Google 雲端硬碟創建一個掛載點吧。

  1. $ mkdir ~/mygoogledrive

最後操作,使用如下命令掛載 Google 雲端硬碟:

  1. $ google-drive-ocamlfuse ~/mygoogledrive

恭喜你了!你可以使用終端或檔案管理器來訪問 Google 雲端硬碟裡面的檔案了。

使用終端:

  1. $ ls ~/mygoogledrive

使用檔案管理器:

如何你有不止一個賬戶,可以使用 label 命令對其進行區分不同的賬戶,就像下麵一樣:

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

當操作完成後,你可以使用如下的命令卸載 Google 雲端硬碟:

  1. $ fusermount -u ~/mygoogledrive

獲取更多信息,你可以參考 man 手冊。

  1. $ google-drive-ocamlfuse --help

當然你也可以看看官方文件[4]和該專案的 GitHub 專案[5]以獲取更多內容。

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 上的類似評論[6]:“GCSF 意在某些方面更快(遞迴列舉檔案、從 Google 雲端硬碟中讀取大檔案)。當檔案被快取後,在消耗更多的記憶體後,其快取策略也能讓讀取速度更快(相對於 google-drive-ocamlfuse 4-7 倍的提升)”。

安裝 GCSF

GCSF 能在 AUR[7] 上面找到,對於 Arch 用戶來說直接使用 AUR 助手來安裝就行了,例如Yay[3]

  1. $ yay -S gcsf-git

對於其它的發行版,需要進行如下的操作來進行安裝。

首先,你得確認系統中是否安裝了Rust語言。

◈ 在 Linux 上安裝 Rust[8]

確保 pkg-config 和 fuse 軟體包是否安裝了。它們在絕大多數的 Linux 發行版的預設倉庫中都能找到。例如,在 Ubuntu 及其衍生版本中,你可以使用如下的命令進行安裝:

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

當所有的依賴軟體安裝完成後,你可以使用如下的命令來安裝 GCSF:

  1. $ cargo install gcsf

使用方法

首先,我們需要對 Google 雲端硬碟的操作進行授權,簡單輸入如下命令:

  1. $ gcsf login ostechnix

你必須指定一個會話名稱。請使用自己的會話名稱來代 ostechnix。你會看到像下圖的提示信息和Google 雲端硬碟賬戶的授權驗證連接。

直接複製並用瀏覽器打開上述 URL,並點擊 “allow” 來授權訪問你的 Google 雲端硬碟賬戶。當完成授權後,你的終端會顯示如下的信息。

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

GCSF 會把配置儲存檔案在 $XDG_CONFIG_HOME/gcsf/gcsf.toml,通常位於 $HOME/.config/gcsf/gcsf.toml。授權憑證也會儲存在此目錄當中。

下一步,創建一個用來掛載 Google 雲端硬碟的目錄。

  1. $ mkdir ~/mygoogledrive

之後,修改 /etc/fuse.conf 檔案:

  1. $ sudo vi /etc/fuse.conf

註釋掉以下的行,以允許非管理員用 allow_other 或 allow_root 掛載選項來掛載。

  1. user_allow_other

儲存並關閉檔案。

最後一步,使用如下命令掛載 Google 雲端硬碟:

  1. $ gcsf mount ~/mygoogledrive -s ostechnix

示例輸出:

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

重覆一次,使用自己的會話名來更換 ostechnix。你可以使用如下的命令來查看已經存在的會話:

  1. $ gcsf list
  2. Sessions:
  3. - ostechnix

你現在可以使用終端和檔案管理器對 Google 雲端硬碟進行操作了。

使用終端:

  1. $ ls ~/mygoogledrive

使用檔案管理器:

如果你不知道自己把 Google 雲端硬碟掛載到哪個目錄了,可以使用 df 或者 mount 命令,就像下麵一樣。

  1. $ df -h
  2. Filesystem Size Used Avail Use% Mounted on
  3. udev 968M 0 968M 0% /dev
  4. tmpfs 200M 1.6M 198M 1% /run
  5. /dev/sda1 20G 7.5G 12G 41% /
  6. tmpfs 997M 0 997M 0% /dev/shm
  7. tmpfs 5.0M 4.0K 5.0M 1% /run/lock
  8. tmpfs 997M 0 997M 0% /sys/fs/cgroup
  9. tmpfs 200M 40K 200M 1% /run/user/1000
  10. GCSF 15G 857M 15G 6% /home/sk/mygoogledrive
  11. $ mount | grep GCSF
  12. GCSF on /home/sk/mygoogledrive type fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000,allow_other)

當操作完成後,你可以使用如下命令來卸載 Google 雲端硬碟:

  1. $ fusermount -u ~/mygoogledrive

瀏覽GCSF GitHub 專案[9]以獲取更多內容。

3、Tuxdrive

Tuxdrive 也是一個非官方 Linux Google 雲端硬碟客戶端。我們之前有寫過一篇關於 Tuxdrive 比較詳細的使用方法。可以查看如下鏈接:

◈ Tuxdrive: 一個 Linux 下的 Google 雲端硬碟客戶端[10]

當然,之前還有過其它的非官方 Google 雲端硬碟客戶端,例如 Grive2、Syncdrive。但它們好像都已經停止開發了。當有更受歡迎的 Google 雲端硬碟客戶端出現,我會對這個串列進行持續的跟進。

謝謝你的閱讀。

 

赞(0)

分享創造快樂