Plexdrive是一個掛載Google Drive的工具
但只有Linux版本,掛載的時候跟rclone類似
但其賣點是:若是作為串流電影用的媒體櫃的話,緩衝效果聽說比較好
這是其官方網站: https://github.com/dweidenfeld/plexdrive
若要長期掛載的話,屬性最搭配的就是NAS了
剛好NAS也是Linux系統,所以自然就能裝了
老實說我對Linux不熟,試著找了許多教學文,找到一個最為詳細的教學文
甚至連影片都有,不過是韓文的,這部分可以適時搭配翻譯工具加減看
文章連結
https://www.clien.net/service/board/cm_nas/13516575
由於我自己也是搞了老半天,似懂非懂的
所以稱不上教學文,最多就當作我自己個人的筆記用途
以下開始零散的補充說明
Google Drive的憑證要事先準備好,可參考影片或自行Google
影片一開始需要安裝兩個套件:SynoCli Network Tools、文字編輯器都要安裝
過程中會需要執行腳本
比如說plexdrive-first.sh和plexdrive-mount.sh
這是我的腳本,跟教學文不同處主要是參數部分
plexdrive-first.sh
#!/bin/ash # your mount folder path MOUNT_PATH='/volume1/plex/gdrive' PLEXDRIVE_PATH='/volume1/plex/.plexdrive' chmod 755 $PLEXDRIVE_PATH/plexdrive-mount.sh cd $PLEXDRIVE_PATH $PLEXDRIVE_PATH/plexdrive mount --cache-file=$PLEXDRIVE_PATH/cache.bolt -c $PLEXDRIVE_PATH -o allow_other,allow_non_empty_mount $MOUNT_PATH --gid=1002 --uid=1002 --chunk-size=15M --max-chunks=15 --refresh-interval=1m -v 2 exit |
plexdrive-mount.sh
#!/bin/ash # your mount folder path MOUNT_PATH='/volume1/plex/gdrive' PLEXDRIVE_PATH='/volume1/plex/.plexdrive' echo $TMP_PATH #---------------------------- # unmount script # run # /your_path/plexdrive.sh unmount # ex) # /volume1/work/.plexdrive/plexdrive-mount.sh unmount if [ $1 ] && [ $1 = "unmount" ] then echo '>> unmounting' umount -l $MOUNT_PATH fusermount -uz $MOUNT_PATH exit fi #---------------------------- # crontab mount script # run # /your_path/plexdrive.sh # ex) # /volume1/work/.plexdrive/plexdrive-mount.sh MOUNTTYPE=`cat /proc/mounts | grep $MOUNT_PATH | awk '{print $3}'` echo $MOUNTTYPE if [ $MOUNTTYPE ] && [ $MOUNTTYPE = "fuse" ] then echo '>> aleady mounted' else echo '>> mounting' umount $MOUNT_PATH fusermount -uz $MOUNT_PATH cd $PLEXDRIVE_PATH $PLEXDRIVE_PATH/plexdrive mount --cache-file=$PLEXDRIVE_PATH/cache.bolt -c $PLEXDRIVE_PATH -o allow_other,allow_non_empty_mount $MOUNT_PATH --chunk-size=15M --max-chunks=15 --refresh-interval=1m -v 2 & echo '>> sleep 5..' sleep 5 echo '>> ls' ls $MOUNT_PATH echo '>> end' fi exit |
參數的部分很多人都不太一樣,可以google看看
紅字是路徑,這裡我跟韓文的教學文一樣
藍色的部分是參數,我多添加了這個
--cache-file=$PLEXDRIVE_PATH/cache.bolt
因為我把plexdrive的暫存檔cache.bolt的路徑改到這裡
看起來的資料夾架構會像是下圖:

cache.bolt好像是暫存檔
如果有什麼奇怪的問題想重新設定的話
把這幾個檔案刪掉
cache.bolt、config.json、token.json
然後重跑一次plexdrive-first.sh
腳本的內容有點長,很有可能腳本內容打錯字就出錯
另外我截圖一小部分原教學文的腳本

我把它貼上執行後有點問題
推測可能是我把反斜線都複製到NAS上的腳本了
另外參數的部分原文有斷行
我則是改成同一行,後來就正常了(參考我的腳本)
總之腳本這個內容要特別注意
也是整個過程中最容易出錯的地方
如果掛載過程中有什麼狀況的話
可以用這個指令卸載(fusermount -uz /路徑)
fusermount -uz /volume1/plex/gdrive
umount -l /volume1/plex/gdrive
下圖是我執行plexdrive-first.sh的指令最後的畫面
Processed 31663 items / deleted 4953 items / updated 26710 items
這個數字會一直增加跳動,跟自己的Google Drive內的檔案有關係
別人分享給你的檔案或資料夾也算在內
我這帳號上沒有任何檔案,單純就是別的Google帳號分享過來的資料夾而已
無論是自己的檔案或是別人分享的檔案,如果檔案很多的話,這段數字跳動的過程會越久
我這帳號分享過來的資料夾內的電影總量約61T(檔案數約1萬9左右)
跑完大概要花兩個小時

跑完後會顯示First cache build process finished!
這時你在掛載的資料夾內才會出現Google Drive的內容

Linux有個指令screen
如果在做掛載的動作的話
跑plexdrive-first.sh或plexdrive-mount.sh建議在screen底下執行
而該韓國影音圖文教學則是打算透過Synology NAS內建的排程功能去執行腳本
所以沒有用screen
大致的筆記就這樣
我其實還是很多不太曉得
基本上有點誤打誤撞成功的
問我的話我也不清楚
若要找人問的話,找對Linux比較熟的人問會比較有解
以上算是找到的教學文中最簡易清楚的了
但更早之前也有篇同樣韓文的教學圖文
那個操作就難了點
大多都是用指令操作
底下我同樣補上更早之前所做的一些指令筆記(有些只是方便複製用)
沒什麼順序性,想到什麼補什麼
底下的內容跟分隔線上的內容不見得相同
不要搞混了
其他可參考的資訊連結
http://papa.2ss.kr/13
https://youtu.be/cuE_iUACd_o
https://reurl.cc/lKKkq
如果你本來就會Linux的話,部分操作可參考這個
https://cloudboxes.io/wiki/how-to/apps/set-up-plexdrive
chmod 777 plexdrive
/volume1/plex/.plexdrive/plexdrive-first.sh
/volume1/plex/.plexdrive/plexdrive-mount.sh
在Synology上掛載Plexdrive
前置作業:準備個Google Drive API的憑證
https://reurl.cc/kKWkL
大致參閱韓文的圖文教學(可在Chrome右鍵翻譯,但還是要保留一個原始韓文的對照,才不會弄錯意思)
https://reurl.cc/7zqE5
同時可參考這影片(操作不太一樣,但可以看一看)
https://youtu.be/MKbFMw3ZpME
我在Synology內的新增的共用資料夾,我是命名為「GoogleDrive」
特別注意的是,參考韓文圖文教學的操作中
到了這一步以後
ln -s plexdrive-linux-amd64 plexdrive
要記得特別把更改plexdrive權限(指令:chmod 777 plexdrvie)
youtube影片有這部分
大致上的路徑配置都是參考圖文教學的
所以到最後我掛載的指令是這樣:
/volume1/docker/.plexdrive/plexdrive mount -c /volume1/docker/.plexdrive -o allow_other,allow_non_empty_mount /volume1/GoogleDrive -v 2
/volume1/docker/.plexdrive/plexdrive mount /volume1/GoogleDrive -c /volume1/docker/.plexdrive -o allow_other,allow_non_empty_mount -v 2
mkdir /volume1/docker/.plexdrive
cd /volume1/docker/.plexdrive
wget https://github.com/dweidenfeld/plexdrive/releases/download/5.0.0/plexdrive-linux-amd64
ln -s plexdrive-linux-amd64 plexdrive
chmod 777 plexdrive
/volume1/docker/.plexdrive/plexdrive mount -c /volume1/docker/.plexdrive -o allow_other,allow_non_empty_mount /volume1/GoogleDrive -v 2
rm -r /volume1/docker/.plexdrive
一些有機會用到的指令
如果掛載過程中有什麼狀況的話
可以用這個指令卸載(fusermount -uz /路徑)
fusermount -uz /volume1/GoogleDrive
umount -l /volume1/GoogleDrive
將憑證設定檔刪掉
rm /volume1/docker/.plexdrive/config.json
rm /volume1/docker/.plexdrive/token.json
將別地方的憑證設定檔複製過來
cp /volume1/NasDownload/config.json /volume1/docker/.plexdrive
命名某screen名稱
screen -S plexdrive
刪掉某screen
screen -X -S [session ID] quit