在 Mac 上存取阿里雲盤、115、夸克
搭配 OpenList 使用 — 大約 10 分鐘,需要一台常開的裝置。
阿里雲盤、115、夸克、百度、迅雷這類網盤,並未向第三方 App 開放可以直接接入的通道。它們的開放平台需要中國境內的主體資格、逐一審核,而且授權隨時可能被收回 — 社群專案 Alist 就先後失去過 123 雲盤、阿里雲盤和 115 的授權。
PolyDrive 的做法是不自己去維護這些隨時會斷的通道,而是支援 OpenList:一個開源的網盤聚合服務,由社群維護這些網盤的對接。你把 OpenList 部署起來,PolyDrive 連接它,就能在 Finder 裡像本機資料夾一樣使用這些網盤。
這條通道的穩定性不由 PolyDrive 保證。網盤業者隨時可能調整政策,屆時需要等待 OpenList 上游跟進。如果你有重要資料存在這些網盤裡,請不要把它當成唯一的存取方式。
開始之前
- 一台常開的裝置。裝在 NAS 或伺服器上,任何時候都能用;裝在 Mac 本機也可以,但 Mac 睡眠時掛載會斷開。
- 網盤的帳號,以及一支能掃碼的手機。
- PolyDrive 免費版可以掛載兩個雲端硬碟。一個 OpenList 只計為一個,不管你在它裡面接了幾個網盤 — 這是這個做法順帶的好處。
第一步 · 部署 OpenList
用 Docker
mkdir -p /etc/openlist && docker run -d --restart=unless-stopped \
-v /etc/openlist:/opt/openlist/data -p 5244:5244 \
-e UMASK=022 --name openlist openlistteam/openlist:latest
查看自動產生的管理員密碼:
docker logs openlist | grep -i "initial password"
群暉 / QNAP
在 Container Manager(套件中心的 Docker)裡搜尋 openlistteam/openlist,對應 5244 連接埠和一個資料目錄,其餘參數同上。
完成後
瀏覽器開啟 http://<裝置IP>:5244,用 admin 和上一步得到的密碼登入。第一件事是改掉這個密碼。
第二步 · 在 OpenList 裡加入網盤
在後台進入「儲存」→「添加」。
| 網盤 | 選擇的驅動 | 取得憑證 |
|---|---|---|
| 阿里雲盤 | 阿里雲盤 Open |
勾選「使用 OpenList 提供的參數」,ClientID 和 AppKey 都留空,點「取得權杖」,用手機掃碼,再把得到的 Refresh Token 填回去 |
| 115 | 115 Open |
同樣是掃碼授權流程 |
| 夸克 / 百度 / 迅雷 / 天翼 | 各自對應的驅動 | 一般是填 Cookie 或掃碼 |
掛載路徑填 /aliyun、/115 這樣的名字 — 它會成為你在 Finder 裡看到的目錄名稱。
順手改一個設定:快取時間
在儲存設定裡找到 cache_expiration(快取過期時間,單位是分鐘),預設 30。OpenList 會把每個目錄的列表快取起來,在這段時間內,你剛在網盤 App 裡新增的檔案在 Finder 中看不到。想讓新檔案更快出現,就把它調小。
不要填 0。填 0 不是關閉快取,而是讓快取項目變成事實上永久有效 — 新增的檔案將永遠不會出現,連更新儲存設定都清不掉。
填 1 的實際生效時間約 70 秒,是個合理的選擇。如果只想針對某些目錄加速,用 CustomCachePolicies,每行一條 glob:ttl。
第三步 · 建立一個給 PolyDrive 用的帳號
不要把 admin 的密碼交給任何用戶端。在後台進入左側的「用户」→「添加」(OpenList 的繁體介面這一項尚未翻譯,仍顯示簡體),然後必須勾選這三項權限:
- WebDAV 讀取
- WebDAV 管理
- 寫入內容(創建/上傳/修改) — 很多教學會漏掉這一條,或者按舊版 Alist 叫它「新建目錄或上傳」
為什麼一個「唯讀」帳號會出問題
PolyDrive 的「從伺服器重新整理」會主動讓 OpenList 丟棄目錄快取(發起一次 refresh=true 的列舉),否則你拿到的永遠是最多 30 分鐘前的舊列表。而 OpenList 要求發起重新整理的帳號在該路徑上有寫入權限:只給讀取和管理權限(權限值 768)會被拒絕,加上寫入位元(776)才能通過。
唯讀帳號不會報錯,只會讓重新整理靜默失效 — PolyDrive 會一直告訴你「已是最新」,因為它從伺服器拿到的答案確實逐位元組沒變。
這不只影響「看不到新檔案」。目錄快取裡過期而偏小的檔案大小,可能讓一次分段讀取被提前截斷。請不要給 PolyDrive 用唯讀帳號。
第四步 · 在 PolyDrive 裡連線
在 PolyDrive 中加入儲存,選擇 OpenList,然後填寫:
- 伺服器位址:
http://<裝置IP>:5244 - 使用者名稱 / 密碼:第三步建立的那個帳號
連線成功後,你在 OpenList 裡掛的所有網盤,會作為子目錄出現在 Finder 的同一個位置底下。
從外網存取:不要直接把 5244 連接埠暴露到公網。用 Tailscale 之類的工具組網,或者用反向代理配上 HTTPS。
排除問題
| 狀況 | 原因 | 解決 |
|---|---|---|
| 網盤 App 裡新增的檔案,Finder 裡看不到;點重新整理說「已是最新」 | OpenList 的目錄快取沒有被清除 | 檢查 PolyDrive 用的帳號是否勾了「寫入內容(創建/上傳/修改)」,並把 cache_expiration 調小 |
出現 403 Refresh without permission |
同上,帳號缺少寫入權限 | 補上權限後重新連線 |
| 目錄能正常列出,但開啟檔案失敗或卡住 | 用戶端跟不了 302 轉址 | 在該儲存的設定裡,把 WebDAV 策略從「302 轉址」改成「使用代理 URL」。流量會經 OpenList 中轉,慢一些但相容性更好 |
出現 Too Many Requests |
觸發了網盤的速率限制 | 等幾分鐘。避免短時間內大量走訪目錄 |
某個網盤突然全部無法存取,例如出現 UserNotAllowedAccessDrive |
上游授權被限制 | 這是網盤業者端的變化,請關注 OpenList 的更新 |
| 用了一段時間後授權失效 | Refresh Token 過期或被撤銷 | 回到 OpenList 後台,對該儲存重新掃碼授權 |
新增驅動時找不到對應的名字
OpenList 的驅動名稱區分大小寫,而且不一定符合直覺(例如通用的 WebDAV 驅動叫 WebDav,不是 WebDAV)。以後台列表裡顯示的名字為準。
使用前請了解
- 這些網盤的服務條款通常禁止第三方掛載用於公開分享和外連散布。阿里雲盤明確禁止用來搭建圖床、軟體床、影片外連等散布服務,多 IP 頻繁存取可能導致帳號被凍結。請只用於存取你自己的檔案。
- 通道可能隨時中斷。網盤業者調整政策時,恢復時間取決於 OpenList 上游,不在 PolyDrive 的控制範圍內。
- OpenList 是獨立的開源專案(AGPL-3.0 授權),由社群維護,與 PolyDrive 沒有隸屬關係。它本身的部署問題請參考 OpenList 官方文件。
照這份指南走完仍然連不上?寫信到 [email protected],並附上 App 內錯誤對話框裡 Copy Diagnostics(拷貝診斷資訊)按鈕給出的內容。另見疑難排解。