在 macOS 掛載 OpenStack Swift — NetDrive 磁碟機設定
使用 NetDrive 3.18+ 將 OpenStack Swift 物件儲存掛載為原生 macOS 磁碟區。逐步說明 Keystone v2/v3 驗證設定與 Finder 整合。
某資料科學團隊在自建的 OpenStack 叢集上管理 60 TB 的模型訓練資料,他們在 macOS 上需要的東西跟 Linux 上一樣:一個直接指向 Swift 的檔案系統路徑,讓 Python 腳本可以直接參照 /Volumes/swift-data/,不需要任何額外的抽象層。NetDrive 自 3.1 版起就支援 OpenStack Swift,在 macOS 14 Sonoma 或更新版本上,整個設定過程不到五分鐘。

直接在 macOS Finder 中掛載 OpenStack Swift
NetDrive 讓 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 與 macOS 上顯示為原生磁碟機 — 不需同步,也不需完整下載。
- 將 Swift 容器以原生 /Volumes/ 項目顯示在 Finder 中
- 支援 Keystone v2 與 v3 驗證
- 原生 Apple Silicon 支援 — macOS 14 Sonoma 及更新版本
免費試用。提供終身與訂閱方案。
你需要準備的憑證
開啟 NetDrive 之前,請先向你的 OpenStack 管理員或 Horizon 儀表板取得以下資訊:
- Auth URL — Keystone 身分識別端點,例如
https://keystone.example.org:5000/v3。請務必包含版本路徑(/v2.0或/v3),完全依照管理員提供的內容輸入;NetDrive 會原樣使用。 - Username 和 Password — 你的 OpenStack 使用者憑證。部分部署會發放應用程式憑證而非使用者密碼;兩種形式都可以填入 NetDrive 的憑證欄位。
- Project / Tenant Name — 擁有目標容器的 OpenStack 專案(Keystone v3)或租戶(Keystone v2)。即使你是叢集上唯一的使用者,這個欄位仍為必填。
- Region — 若叢集為多地區部署,請填寫地區名稱(例如
RegionOne)。單一地區部署可留空。 - Container Name — 要掛載為磁碟機根目錄的特定 Swift 容器。留空則以帳戶層級掛載,會在 Finder 中將所有容器顯示為頂層資料夾;填入名稱則可直接指向單一容器。
系統預設使用 HTTPS,也強烈建議保持使用 HTTPS — Swift 驗證權杖絕不應透過明文 HTTP 傳輸。

macOS 版本注意事項: OpenStack Swift 支援自 NetDrive 3.1 版起就已存在。在 macOS 14 Sonoma 或更新版本上,你需要 NetDrive 3.18 或更高版本。若你仍在使用 macOS 13 Ventura,NetDrive 3.17 是最新的相容版本 — 以下的 Swift 設定步驟完全相同。
在 NetDrive 中新增 Swift 磁碟機
- 在你的 Mac 上開啟 NetDrive — 安裝後會常駐於選單列。
- 點選Add Drive(磁碟機管理視窗中的 + 按鈕)。
- 從提供者清單中選擇OpenStack Swift。
- 填寫憑證欄位:Auth URL、Username、Password 與 Project/Tenant Name。如適用,請一併填寫 Region 與 Container Name。
- 為磁碟機命名 — 這會成為 Finder 中
/Volumes/下顯示的磁碟區名稱。 - 將 Mount Type 設為 Network Drive 以取得完整讀寫存取權,或設為 Read-only Drive 以避免此 Mac 對叢集執行寫入操作。
- 點選Mount。
磁碟區會在幾秒內出現在 Finder 側邊欄中。參照 /Volumes/swift-data/ 的腳本可以立即執行 — 不需要修改任何路徑。

在 Finder 中操作 Swift 檔案
掛載完成後,Swift 容器在 Finder 中的外觀與行為就跟本機磁碟機一樣。你可以在任何應用程式中直接開啟檔案 — 把 TIFF 拖進 Photoshop、在 VS Code 中開啟 JSON、用 QuickLook 預覽影片 — 儲存的變更會自動寫回物件儲存。NetDrive 是按需擷取檔案內容,並不會在掛載時就把整個容器下載到你的 Mac。
若容器內在扁平命名空間中有數萬個物件,第一次開啟時列表速度會較慢。如果遇到這種情況,在 Swift 端以前綴(prefix)整理物件會有明顯幫助 — NetDrive 會將前綴渲染為資料夾,並以漸進方式載入,而不是一次要求列出所有物件的完整清單。
Spotlight 搜尋可與已掛載的 NetDrive 磁碟區搭配使用。若你的團隊需要依檔名或中繼資料在 Swift 容器中尋找檔案,不需要任何額外設定即可使用此功能。

登入時自動掛載
若某台 Mac 會長時間保持開機,並作為通往 Swift 叢集的共用中繼站,可在磁碟機設定中將 Auto Mount 設為 On Login。這樣一來,每次有使用者登入時,磁碟區都會自動重新連線,不需要任何手動操作。
憑證會儲存在 macOS 鑰匙圈中,因此重新連線是無聲進行的,不需要輸入密碼。若你需要在任何使用者登入之前就掛載磁碟機 — 例如作為無頭檔案中繼站的 Mac mini — 請改為設定成 On Boot。

結語
在 macOS 上使用 NetDrive 掛載 OpenStack Swift,可以讓你獲得一個由私有雲支援的 /Volumes/ 項目 — 現有腳本不需要修改任何路徑、不需要額外管理常駐程式,並且對任何主流 OpenStack 發行版的 Keystone 驗證叢集,開箱即用 HTTPS 連線。
若同一叢集中的 Windows 工作站也需要相同的工作流程,Mount OpenStack Swift on Windows with NetDrive 涵蓋了相同的憑證設定,並改以磁碟機代號取代 Finder 磁碟區。若你的混合式基礎架構也包含 S3 相容的儲存服務,你可以透過同一套 NetDrive 安裝同時掛載兩者 — 詳見 Mount Amazon S3 on macOS with NetDrive。
— Robin, NetDrive