跳到主要內容
AnyStorage
免費下載

Cloudflare R2 掛載

把 Cloudflare R2 掛載為本機磁碟機

Cloudflare R2 沒有官方桌面掛載程式。改用 AnyStorage 的本機 WebDAV 伺服器(連接埠 3211),在 Finder 或檔案總管開啟 bucket。

用一個本機 WebDAV 端點,把 Cloudflare R2 的 bucket 變成 Finder 或檔案總管裡打得開的磁碟機,不必安裝 FUSE 驅動程式。

Cloudflare R2 掛載,R2 網路磁碟機,R2 桌面用戶端

R2 的 API 是 S3 的,檔案總管裡卻看不到它

會選 Cloudflare R2 的理由大多就兩個:API 相容 S3,現有的 SDK 跟工具鏈不用改;流出流量不另外收費。於是建置產物、發版二進位檔、設計稿、資料庫備份、靜態資源全丟進 R2,也不用再算取回來要花多少錢。

然後你需要拿一個檔案。不是跑流水線,也不是同步,就是一個檔案,用一般的程式打開它。這時候你只能回 Cloudflare 主控台,或是敲 aws s3 cp 再手動補上 --endpoint-url,不然就是 wrangler。沒有官方桌面程式能把 bucket 放進 Finder 或檔案總管。

這件事你自己就能做,而且不用裝核心驅動程式。

先拿到 R2 的金鑰

R2 走的是 S3 協定,所以你需要一組 S3 風格的金鑰和一個 endpoint。在 Cloudflare 主控台打開 R2,到 R2 API 權杖頁面建立一個 token,會拿到 Access Key ID 與 Secret Access Key,其中 Secret 只會顯示一次。endpoint 綁定你的帳號 ID,格式像 https://ACCOUNT-ID.r2.cloudflarestorage.com。

兩個習慣建議留著:

  • 權杖只授權給真正會用到的 bucket,不要順手開整個帳號的權限。
  • 如果只是要抓建置產物、看一眼上傳結果,就簽一組唯讀權杖。反正後面要用的 WebDAV 伺服器,免費版本來就是唯讀的。

在 AnyStorage 建立連線

AnyStorage 是桌面端的儲存瀏覽器,支援 macOS 11 以上、Windows 10 以上、Ubuntu 20.04 以上,Apple Silicon 與 Intel 都能跑,免費下載,不用註冊帳號。新增連線、選 Cloudflare R2,把 endpoint 和那組金鑰填進去。

在程式裡,bucket 就是一棵目錄樹:多分頁、搜尋、預覽、傳輸佇列。日常大部分的事情到這一步就結束了。

掛載是留給剩下那一部分的。

用內建 WebDAV 把 Cloudflare R2 掛載為本機磁碟機

AnyStorage 內建一個 WebDAV 伺服器。側邊欄打開「服務」,切到 WebDAV 分頁,按啟動。預設監聽 http://127.0.0.1:3211,連接埠可以改成 1 到 65535 之間的任何值。保持啟用,下次開啟程式時它會自己起來。

HTTP Basic 驗證一直是開著的。預設使用者名稱是 anystorage,密碼是第一次使用時隨機產生的 24 個字元,兩者都能改,旁邊有重新產生和複製按鈕。

沒有一鍵掛載按鈕。你複製那個網址,再用系統自己的工具掛上去:

  • macOS:Finder → 前往 → 連接伺服器(Cmd+K),貼上 http://127.0.0.1:3211,選「註冊使用者」,填程式裡的帳號密碼。
  • Windows:檔案總管 → 本機 → 連線網路磁碟機,貼上同一個網址。
  • Linux 或其他情況:任何聽得懂 WebDAV 的用戶端都行,播放器和備份工具也算。

目前在程式裡處於連線狀態的每一個儲存連線,都會用連線名稱當資料夾名,出現在 WebDAV 根目錄下。R2 的 bucket 就跟你開著的其他東西並排,能出現在這裡的連線類型一共 20 種,從 S3、B2、Google 雲端硬碟,到 SFTP(家裡那台群暉 NAS 也走這條)和本機資料夾。

不用 macFUSE,不用在 Apple Silicon 上降低安全性開機,不用裝 WinFsp 驅動程式,不需要系統管理員權限,也沒有設定檔要寫。

平常能省下什麼

讀取是串流的,支援 HTTP Range,所以在檔案中間跳著讀,不必先把整個檔案抓下來。

  • 在 Finder 裡直接把建置產物拖出來,不用先幫自己簽一個預簽名網址。
  • 用快速查看翻一遍圖片資料夾,確認這次部署到底上傳了什麼。
  • 用一般播放器直接拉時間軸看 R2 裡的影片。
  • 讓支援 WebDAV 的備份工具往裡面寫(需要 Pro 並開啟寫入權限)。

有哪些限制

免費版的 WebDAV 伺服器是唯讀的。要透過掛載寫入需要 Pro 授權並切到完全控制模式;就算是 Pro,你也可以刻意鎖成唯讀。

沒有 TLS。網址是明文 http,驗證是 Basic,這正是我們預設只綁 127.0.0.1 的原因。區域網路模式會綁到 0.0.0.0,開啟時程式會明確警告你,因為帳號密碼會以明文在網路上跑。

還有三件事。程式重新啟動之後,R2 連線要在程式裡打開過一次,才會出現在 WebDAV 根目錄下,因為連線是延遲建立的;新增的連線則不用重啟伺服器就看得到。沒有檔案鎖定,兩台機器同時改同一個檔案這種事它擋不住。最上層的連線資料夾不能透過 WebDAV 改名或刪除,也不能在掛載裡把檔案從一個連線直接拖到另一個連線,跨連線請先複製回本機。

Windows 那邊還有一份自己的清單。系統內建的 WebClient 服務到 2026 年已經是被淘汰的狀態,而且通常沒在跑,先到 services.msc 把它啟動。Windows 預設也拒絕 HTTP 上的 Basic 驗證:登錄檔 HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters 底下的 BasicAuthLevel 預設只允許 SSL 上的 Basic,要改成 2 再重新啟動 WebClient。沒改的話,症狀是提示資料夾無效(英文原文 The folder you entered does not appear to be valid)、系統錯誤 67,或是 0x80070043。傳輸上限 FileSizeLimitInBytes 預設是 50,000,000 位元組,超過就會出現 0x800700DF。換一個第三方 WebDAV 用戶端可以繞開這一整套。

要搬幾千個物件,還是回程式裡用傳輸佇列。掛載處理的是另一類問題:某個程式需要看見某個檔案。