2019年10月12日 星期六

memo for streaming google drive on ubuntu file system

若想在Ubuntu檔案系統掛載串流版Google硬碟,可考慮安裝google-drive-ocamlfuse。
串流版好處是不佔實體硬碟空間,有須要才從雲端抓取資料到快取區。
其安裝指令如下,須管理者權限:
 $ sudo add-apt-repository ppa:alessandro-strada/ppa
 $ sudo apt install google-drive-ocamlfuse

安裝好之後,可供一般用戶以用戶模式掛載到家目錄,方便存取。
以下掛載指令只要執行一次即可,會啟動瀏覽器作身份確認:
  $ mkdir ~/google-drive
  $ google-drive-ocamlfuse ~/google-drive

若想卸載,可用以下指令
  $ fusermount -u ~/google-drive

症狀A: 發現執行 google-drive-ocamlfuse,沒有跳出瀏覽器驗證身份。
解法A: 清空快取狀態,指令是 google-drive-ocamlfuse -cc
       或顯示掛載除錯訊息,指令是 google-drive-ocamlfuse -debug ~/google-drive
      

症狀B: 發現 google-drive-ocamlfuse 不釋放刪除檔案之快取內容,吃光個人硬碟配額。
       用 quotarepquota -avus 指令看得到配額用光,而 du -s ~/ 指令卻看不到被誰吃光,
       但用 lsof | grep pid 指令則可以看到上千個 50MB 快取塊仍未釋放。
解法: 重新啟動google-drive-ocamlfuse,作法是
1.查詢google-drive-ocamlfuse行程pid,指令為 ps ux | grep google-drive-ocamlfuse
2.刪除google-drive-ocamlfuse行程,釋放已刪除快取,指令為 kill -9 pid
3.重新啟動google-drive-ocamlfuse,指令為 google-drive-ocamlfuse ~/google-drive

參考
1. Rendeck (2018) Google Drive on Ubuntu 18.04 Bionic Beaver Linux
2. GitHub: Disk space not freed up from cache #512
3. EPH 的程式日記 [Linux] 使用 lsof, lslocks, fuser 指令列出目前鎖定中的 file locks
4. 想知道硬碟用量及哪些目錄、檔案最耗空間的指令如下: 
     > quota       # 看個人配額使用情形
     > du -s ~/*    # 看個人第一層家目錄空間用量
     > tree -s --sort=size ~  # 逐層列舉家目錄以下各檔案大小,由大到小排序
                              # 若無tree指令,可請管理員用 sudo apt-get install tree指令安裝

沒有留言: