在 macOS 上挂载 MinIO — 用 NetDrive 访问自托管 S3 存储

阅读时间 6 分钟 provider-guide minio macos
Steve
SteveSenior Engineer
介绍如何用 NetDrive 将 MinIO 存储桶挂载为 macOS 驱动器。支持 macOS 14 Sonoma 及更高版本,包含 Apple Silicon。设置完成后无需命令行。

上个季度,你的团队在裸机上搭建了一套 MinIO 集群。DevOps 工程师熟悉 mc CLI 和 S3 SDK,但设计师和项目经理并不熟悉——他们只想打开 assets 存储桶中的 PSD 文件,而不用给 IT 提工单。NetDrive 能将 MinIO 存储桶直接映射到 macOS Finder,让存储桶看起来就像一个 USB 驱动器,不会给任何人添麻烦。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

在 Finder 中浏览 MinIO 存储桶——无需命令行

NetDrive 让 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 和 macOS 上显示为本地驱动器 — 无需同步,无需完整下载。

  • 适用于任何 MinIO 实例:本地虚拟机、裸机或云托管
  • 自 NetDrive 3.14 起原生支持 Apple Silicon——无 Rosetta 开销
  • 异步上传让你的应用保持响应,传输在后台进行
WindowsmacOS
下载 macOS 版 NetDrive →

免费试用。提供终身与订阅方案。

连接前需要准备的内容

MinIO 提供 S3 兼容 API,因此 NetDrive 通过 Amazon S3 提供商配合自定义端点来访问它。打开 NetDrive 前,请先准备好以下信息:

  • Access Key 和 Secret Key — 可在 MinIO 控制台的 Identity → Service Accounts 中获取,或由你的 MinIO 管理员提供。
  • Endpoint URL — 你的 MinIO API 端口的基础 URL。本地服务器示例:http://192.168.1.50:9000。TLS 终止部署示例:https://minio.example.com
  • 存储桶名称 — 可在 MinIO 控制台的 Buckets 标签页中查看。
  • 区域(Region) — 除非你的 MinIO 实例配置了自定义区域,否则使用 us-east-1。MinIO 会忽略此值,但 S3 客户端必须发送它。

NetDrive 3.18 及更高版本要求 macOS 14(Sonoma)或更高版本。自 3.14.309 版本起,NetDrive 在 Apple Silicon Mac 上原生运行——不涉及兼容层。

NetDrive 驱动器管理器在 macOS 上显示多个已配置的 S3 兼容提供商

将 NetDrive 连接到 MinIO

点击 NetDrive 菜单栏图标(屏幕顶部的云朵图标),选择 Open Drive Manager:

  1. 点击 + 添加新驱动器。
  2. 从提供商列表中选择 Amazon S3——MinIO 使用相同的 API。
  3. Endpoint 字段中输入你的 MinIO 服务器基础 URL:http://192.168.1.50:9000https://minio.example.com。此处不要包含存储桶名称。
  4. 将你的 MinIO Access KeySecret Key 粘贴到对应字段中。
  5. Region 设置为 us-east-1(如果你在 MinIO 中明确设置了区域,则填写该区域)。
  6. 点击 Connect。NetDrive 会连接到你的 MinIO 服务器并获取存储桶列表。
  7. 选择要挂载的存储桶,点击 OK
  8. 为驱动器命名——例如 MinIO Assets——并将 Auto Mount 设置为 At Login 以实现持久访问。
  9. 点击 Mount

该存储桶会出现在 Finder 侧边栏的 Locations 下,与 AirDrop 或网络共享并列。将文件拖入、双击打开,其余的交给 Finder 处理即可。

TLS 与路径风格寻址

有两个配置细节最容易让 MinIO 部署踩坑:

自签名证书。 如果你的 MinIO 服务器使用的证书不被 macOS 识别(在家庭实验室和内部部署中很常见),连接会因 TLS 握手错误而失败。最干净的解决方法是将你的内部 CA 添加到 macOS 钥匙串:打开 Keychain Access,选择 File → Import Items,导入 CA 证书,并将其标记为 Always Trust。或者,对于纯本地流量,可以在端点字段中输入 http:// 以改用 HTTP。

路径风格存储桶寻址。 MinIO 默认使用路径风格寻址(http://server:9000/bucket-name),而非虚拟主机风格(http://bucket-name.server:9000)。NetDrive 的 S3 兼容提供商默认同样使用路径风格,因此两者无需额外配置即可对齐。如果你的 MinIO 部署配置为虚拟主机风格,请确保你有匹配 *.minio.example.com 的 DNS 通配符,并相应更新端点。

MinIO 存储桶在 macOS Finder 中显示为本地驱动器

大文件与分段上传

对于存放大对象(虚拟机快照、数据库转储、未压缩视频)的存储桶,以下两项设置可提升可靠性:

异步上传模式。 在驱动器管理器中右键点击 MinIO 驱动器,选择 Properties → Upload Mode → Async。你的应用会立即收到写入成功的确认,而 NetDrive 会在后台将实际上传任务排队发送到 MinIO。菜单栏图标会显示实时进度,你可以取消单个传输而不影响其他正在进行的上传。

分段上传阈值。 对于大于 5 GB 的对象,NetDrive 使用 S3 分段上传,该功能自 3.5.434 版本引入。一个 20 GB 的数据库快照会以并行分块的方式上传,而非单一的串行流,这在通常连接远程 MinIO 服务器的 VPN 或 WAN 链路上更具弹性。

总结

MinIO 的 S3 兼容 API 使其成为任何支持 S3 的工具(包括 NetDrive)的即插即用目标。挂载完成后,该存储桶的行为就像任何普通文件夹一样:Finder 预览可用,Spotlight 可以为文件名建立索引,任何应用程序都无需知道存储实际位于另一台服务器上。

同样的 S3 提供商方案也适用于其他 S3 兼容服务。有关端点差异,请参阅 Mount Wasabi on macOS;如果你的团队将 MinIO 与托管的 AWS 产品混合使用,请参阅 Mount Amazon S3 on macOS

— Steve, NetDrive