在 Linux 上挂载阿里云 — NetDrive 实验性构建版
使用 NetDrive 的实验性 Linux 构建版,将阿里云 OSS 存储桶挂载为 Ubuntu 挂载点。涵盖 RAM 密钥、Endpoint 配置与验证步骤。
一条运行在 Ubuntu 主机上的数据流水线需要读取存放在阿里云 OSS 存储桶中的模型检查点,但团队的工具链期望的是一个普通的文件系统路径,而不是把 SDK 调用写进每个脚本里。先把整个存储桶下载下来又违背了初衷,因为检查点文件动辄数百 GB。NetDrive 的 Linux 构建版会把该 OSS 存储桶挂载为一个常规的 Ubuntu 挂载点,这样训练脚本的 open() 调用就能直接访问对象,和在 Windows 或 macOS 上挂载存储桶时一样。

在 Linux 上挂载阿里云 OSS
NetDrive 让 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 和 macOS 上显示为本地驱动器 — 无需同步,无需完整下载。
- OSS 存储桶显示为普通的 Ubuntu 挂载点
- 文件按需流式传输 — 无需同步客户端,也无需先下载整个存储桶
- 可与 S3、Wasabi、腾讯云及 20 余家其他提供商并行使用
免费试用。提供终身与订阅方案。
为什么挂载点在这种场景下优于 SDK
阿里云自身的工具 — ossutil CLI 或 OSS SDK — 在脚本本就是为调用它而专门编写时表现良好。但当调用方是你无法控制的对象时,它就不太合适了:一个期望 torch.load() 打开本地路径的训练任务、对一个日志导出目录做 grep,或是一个从未打算重写以适配对象存储 API 的老旧工具。NetDrive 通过挂载点解析这些针对存储桶的读取操作,因此任何按路径打开文件的程序都无需修改即可工作。
自 3.17.799 版本(2022 年 11 月)起,NetDrive 就已支持阿里云,同一版本也加入了对腾讯云的支持。当前版本 3.19.7 在 Linux 构建版上与其他所有平台一样,是官方推荐使用的版本。

在 Ubuntu 上安装 NetDrive
NetDrive for Linux 通过 GitHub 发布,而非通过 Ubuntu 的软件包仓库:
- 前往 github.com/NetDrive/installer,下载与你的 Ubuntu 版本相匹配的发行版。
- 按照该仓库发行说明中的步骤,安装 NetDrive 挂载任何内容前所需的驱动组件。
- 安装 NetDrive 软件包本身。
- 启动 NetDrive。首次运行会加载驱动组件,过程中可能会提示输入
sudo。
最低支持版本是 Ubuntu 16.04。由于更新是以 GitHub 发行版的形式提供,而非通过 apt upgrade,请务必在维护该主机的运维手册中记下这一点。与 NetDrive 比较页面上标注的一致,Linux 版本同样带有实验性标签 — Windows 和 macOS 承担了大部分测试工作,因此 Linux 上的 OSS 挂载更适合开发机、训练节点或 CI 运行器,而不是一个你自己都还没测试过的无人值守生产任务。
连接前需要准备的内容
- AccessKey ID 和 AccessKey Secret — 在阿里云控制台创建一个限定 OSS 权限的 RAM 用户,再在该用户下生成密钥对,而不要使用账号的根密钥。
- OSS Endpoint — 存储桶所在地域对应的 Endpoint,例如
oss-cn-hangzhou.aliyuncs.com或oss-us-west-1.aliyuncs.com,可在存储桶的概览页面中查看。 - 存储桶名称 — 要挂载的存储桶的准确名称。
分步操作:在 Ubuntu 上连接阿里云
- 打开 NetDrive 的 Drive Manager,点击 + Add Drive。
- 从连接类型列表中选择 Alibaba Cloud。
- 输入 AccessKey ID 和 Secret、OSS Endpoint 以及存储桶名称。
- 设置挂载点 — 例如
/mnt/oss-checkpoints这样的路径,或任何你拥有写入权限的空目录。 - 点击 Connect。 NetDrive 完成身份验证后,会将存储桶挂载到该路径。
在依赖挂载点之前先验证它
不要只信任 GUI,请从终端确认挂载确实生效:
# Confirm the mount is listed
mount | grep oss
# Or just try listing it
ls /mnt/oss-checkpoints

如果一开始列出的内容是空的,先稍等片刻 — 对象数量很多的存储桶,填充根目录可能需要几秒钟。如果之后依然是空的,请先检查 AccessKey 密钥对和 Endpoint 是否正确 — 区域 Endpoint 填错,是 OSS 连接首次尝试身份验证失败的最常见原因。
对于写入密集型任务 — 例如某次运行结束后把一批处理完的输出对象写回存储桶 — NetDrive 会在后台排队处理这些传输,而不会阻塞触发该操作的进程。

在 Linux 构建版上需要留意的事项
- 发布节奏独立 — Linux 驱动组件按自己的节奏发布,因此在 Windows 或 macOS 上修复的问题不会自动在同一周内送达 Linux 版本。
- 没有
apt集成 — 安装和更新都通过 GitHub 发行版进行,而非 Ubuntu 默认的软件包管理器。 - Windows 和 macOS 才是经过充分打磨的目标平台 — NetDrive 官方指南将它们视为生产就绪,而 Linux 被标记为实验性。在把无人值守的生产任务交给 Linux 上的 OSS 挂载之前,请务必先在自己的硬件上充分测试。
小结
在 Ubuntu 上挂载阿里云 OSS,能让 Linux 主机获得与 NetDrive 在 Windows 和 macOS 上相同的类驱动器访问方式,安装程序托管在 GitHub 而非通过 apt 分发。若想在测试更充分的平台上使用同一提供商,请参阅 在 Windows 上用 NetDrive 挂载阿里云 或 在 macOS 上用 NetDrive 挂载阿里云。若想了解更全面的 Linux 相关内容,请参阅 NetDrive on Ubuntu Linux。
— Alex, NetDrive