把你的服务器和存储桶变成 Mac 或 PC 上的文件夹
SkyMount 把 SFTP、FTP/FTPS、Amazon S3 和 Google Drive 挂载为普通文件夹:在 macOS 上显示在访达(Finder)中,在 Windows 上作为网络驱动器显示在资源管理器(Explorer)中。在 Mac 上不需要内核扩展,不需要 macFUSE,也不需要管理员权限。
测试版。 Mac 版只在一台 Mac 上测试过,Windows 版只在一台 Windows 11 电脑上测试过。通过挂载处理的文件请保留备份。
Finder
~/SkyMount/Server
macOS NFS 客户端
macOS 自带。不需要内核扩展(kext),不需要 macFUSE,也不需要管理员权限。
SkyMount
在 127.0.0.1 上运行 NFSv3,负责文件缓存和离线副本。
你的存储
SFTP · FTP / FTPS · Amazon S3 · Google Drive
Explorer
S: (\\SkyMount\Server)
WinFsp 驱动
需要用管理员权限安装一次。SkyMount 本身运行时不需要管理员权限。
SkyMount
处理 Windows 的文件名和大小写规则、文件缓存和离线副本。
你的存储
SFTP · FTP / FTPS · Amazon S3 · Google Drive
挂载的工作方式
文件会缓存在你的电脑上,所以打开文件夹很快,连接断开时也不会丢失你的工作。macOS 和 Windows 上的行为相同。
文件在第一次打开时下载
文件在第一次读取时下载到缓存,只要服务器上的文件大小和修改时间不变,就继续使用缓存。超过 8 MB 的文件按 1 MB 的块读取,所以打开一个大视频时只下载你播放的部分。
保存先写入本地副本,再上传
写入的内容先进入工作副本,空闲三秒后上传;如果程序关闭或刷新文件,会更早上传。如果应用在上传前退出,未发送的更改会记录在磁盘上的日志中,在下次挂载时上传。上传失败后会在 5 秒、10 秒、20 秒后重试,依此类推,最长间隔 5 分钟。
设为离线的文件夹不连接服务器也能打开
对文件夹选择 Keep Offline:在 Mac 上通过访达的右键菜单,在 Windows 上通过系统托盘菜单。文件夹中的所有内容都会下载,并且不会被清出缓存。服务器无法连接时,这些文件夹仍然可以打开,重新挂载后也一样;你做的更改会在服务器恢复后上传。
可连接的存储
每个连接都是一个单独的文件夹。需要多少就可以同时挂载多少。
任何可以通过 ssh 登录的服务器。
使用密码或密钥登录。主机密钥在首次连接时被信任,并按 SHA-256 指纹固定;如果密钥发生变化,连接会被拒绝,直到你在连接设置中点击 Forget。
测试环境: macOS:本地 OpenSSH sshd,6 到 20 MB 的读写、重命名、删除。Windows:asyncssh 2.24.1,18 项驱动器检查。
较旧的主机空间和 NAS 设备。
Require TLS (FTPS) 默认开启。普通 FTP 以明文发送密码,所以只应对你自己网络中的服务器关闭此选项。
测试环境: macOS:pyftpdlib 2.0.1,读取、8 MB 写入、mkdir、重命名、递归删除。Windows:pyftpdlib 2.2.0,除修改时间外的同样的驱动器检查。
AWS 以及兼容 S3 的存储。
请求使用 SigV4 签名,所以兼容 S3 的服务可以使用它们自己的端点。上传使用单个请求,因此单个文件最大为 5 GB。
测试环境: macOS:moto 5.1.4。Windows:moto 5.2.4,包括 12 MB 的范围读取。两个平台都测试了读取、写入、文件夹重命名和删除。
通过你自己创建的 OAuth 客户端。
OAuth 客户端由你在 Google Cloud 中创建,所以没有第三方能看到你的文件。删除的文件会进入 Drive 回收站。Google 文档、表格和幻灯片不会显示,因为它们没有可以下载的文件内容。
测试环境: 尚未在任何平台上测试:需要你自己的 OAuth 客户端。
在访达和菜单栏中
在 Windows 上,同样的操作(Keep Offline、Free Up Space、Open at Login)在系统托盘菜单中。资源管理器中的状态图标和右键菜单暂时还没有。
访达中的状态图标显示每个文件的状态
绿色对勾:可离线使用。蓝色箭头:正在下载或上传。灰色时钟:等待上传。红色感叹号:上传失败,将会重试。
- 菜单栏状态
- 文件传输时显示同步箭头,有挂载时显示实心驱动器图标,否则显示空心驱动器图标。
- 登录时挂载
- 如果网络还没有连接,SkyMount 会在连上网络时再试一次,之后每隔 10 秒到 5 分钟重试,直到挂载成功。
- Free Up Space(释放空间)
- 删除未设为离线的文件夹中的缓存副本。
- Refresh from Server(从服务器刷新)
- 立即重新读取文件夹,用于获取在服务器上通过 git pull 或部署产生的更改。
- 密码等机密信息保存在系统的凭据存储中
- 密码、S3 私密密钥和 Google 令牌保存在 macOS 钥匙串(Keychain)或 Windows 凭据管理器(Credential Manager)中,不会写入连接配置文件。
- 文件管理器的元数据只保留在本地
- Mac 上的 ._* 和 .DS_Store 文件,Windows 上的 desktop.ini 和 Thumbs.db:这些文件都不会传到服务器。
常见问题
为什么用 NFS,而不是 macFUSE 或 WebDAV?
macFUSE 5 需要一个 FSKit 扩展,而这个扩展在开发用的 Mac 上无法启用。系统自带的 WebDAV 客户端每次挂载都会卡住大约 90 秒。本地回环 NFS 不需要扩展、kext 或 root 权限,挂载用时不到一秒。
挂载的卷显示在哪里?
在 Mac 上,位于你个人文件夹中的 ~/SkyMount/<Name>,而不是 /Volumes,因为普通用户无法在那里创建文件夹。访达中每个卷显示为 <Name>.localhost。在 Windows 上,每个连接是一个网络驱动器,例如 S:,并以连接的名称作为卷标。
我的 Mac 上的其他用户能访问挂载吗?
NFS 服务器只监听 127.0.0.1,只接受你的 uid 或 root,并在每个文件句柄中放入一个随机密钥。同一台 Mac 上的其他用户如果伪造凭据,理论上可以访问挂载的卷。在只有一个用户的 Mac 上,这与普通的文件夹权限相当。
在挂载上运行 git 安全吗?
在高强度的 git 测试中,macOS NFS 客户端曾经引发过一次内核崩溃,当时使用的挂载选项 SkyMount 现在已不再使用。通过挂载处理的代码仓库请保留备份。
缓存会占用多少磁盘空间?
除了设为离线的文件夹之外,内容缓存没有大小上限。对文件夹使用 Free Up Space 可以删除它的缓存副本。
为什么 Windows 版需要 WinFsp?
SkyMount 在 Windows 上通过 WinFsp 驱动挂载驱动器。安装 WinFsp 需要一次管理员权限;如果 WinFsp 未安装或版本低于 2.1,SkyMount 安装程序会安装它。SkyMount 本身运行时不需要管理员权限。
为什么运行安装程序时 Windows 会显示警告?
安装程序和应用都还没有代码签名,所以第一次运行时 SmartScreen 会显示警告。
下载 SkyMount 0.1.0
发布于 2026年10月27日发布说明
macOS
macOS 26 或更高版本
由于此版本尚未经过 Apple 公证,macOS 会阻止首次打开。请打开系统设置(System Settings)> 隐私与安全性(Privacy & Security),然后选择仍要打开(Open Anyway)。
Windows
Windows 10 或 11,并安装 WinFsp 2.1
由于安装程序尚未进行代码签名,Windows SmartScreen 会在首次运行时发出警告。请选择更多信息(More info),然后选择仍要运行(Run anyway)。