Manta 使用手册

第 8 章

连接

Manta 可以像打开本地文件夹一样,打开服务器(SFTP、FTP、FTPS、WebDAV、SMB)、S3 存储以及 Docker 和 Kubernetes 容器中的文件夹。你可以像在 Mac 上一样在其中拷贝、移动和重新命名。

本页内容

连接服务器

  1. 按下 ⌘K(连接服务器…),点按工具栏中的 连接,或点按边栏中 服务器 旁边的 +。
  2. 在顶部选择 协议:SFTP、FTP、FTPS、WebDAV、SMB、S3 或 容器。
  3. 填写各个字段(见下文)。
  4. 可选:点按 测试连接。Manta 会报告结果,例如“已登录。个人文件夹:/home/anna”。
  5. 点按 连接。

服务器会在当前面板中打开(对话框会告诉你是哪一个)。该连接会显示在边栏的 服务器 下方。

SFTP 的“连接服务器”对话框
SFTP 的“连接服务器”对话框

提示

你可以一次性在 服务器 字段中输入全部信息:user@host:port。Manta 会将其拆分到各个字段中。

SFTP

SFTP 是 Linux 服务器和许多托管方案的安全标准。

字段含义
服务器、端口服务器的地址;除非你更改,否则端口为 22。
用户你在服务器上的用户名。
登录方式密码、密钥文件(可选填 密码短语,“仅当密钥已加密时需要”)或 SSH 代理(“使用当前运行的 ssh-agent 中已载入的密钥。”)。
文件夹可选,默认为你在服务器上的个人文件夹。

检查服务器密钥

警告

Manta 会将服务器的密钥与你的 ~/.ssh/known_hosts 文件进行比对,也就是终端中 ssh 使用的同一个文件。

  • 已知服务器,密钥匹配: Manta 直接连接,不会询问。
  • 未知服务器(不在 known_hosts 中):Manta 会显示 未知服务器 对话框,其中包含服务器、密钥类型和指纹(SHA256:…,与 ssh-keygen -lf 输出的格式相同)。请将该指纹与管理员或托管服务提供商给你的指纹进行比较。连接并记住 会将密钥添加到 known_hosts(host,端口不是 22 时为 [host]:port)并进行连接;取消 则不连接。
  • 密钥已更改: Manta 不会 连接,并显示红色警告(可能是中间人攻击)。这里特意没有“仍要连接”按钮。重新安装服务器时也会出现这种情况,请向管理员询问正确的指纹。如果指纹一致,请在终端中使用对话框里的命令(例如 ssh-keygen -R host,拷贝命令)移除旧条目,然后重新连接。

重启后在后台重新连接的传输永远不会询问:遇到未知密钥时,它们会等待 重新连接;遇到已更改的密钥时,它们会失败。

FTP 和 FTPS

FTP 以未加密方式发送所有内容,包括你的密码。请仅在本地网络中或针对公共服务器使用。如果服务器允许,匿名 会在不使用密码的情况下登录。

FTPS 是带加密的 FTP(显式 TLS,通常使用端口 21)。Manta 不支持端口 990 上的隐式 FTPS。

FTPS 数据通道

FTP 使用两个连接:一个用于登录和命令,另一个(“数据通道”)用于文件夹列表和文件。有些公司防火墙会阻止加密的数据连接。因此你可以选择 数据通道:

设置行为
自动(默认)加密。如果网络阻止加密的数据连接,传输将以未加密方式继续;登录仍保持加密。
必需始终加密。如果网络阻止加密的数据连接,则连接失败。
关闭列表和文件以未加密方式传输;登录仍保持加密。

当 自动 回退到未加密的数据通道时,你可以看出来:

  • 路径栏中的位置标签会显示一个警告盾牌。
  • 会出现一次性提示:“数据连接未加密(网络阻止了 TLS),登录仍保持加密”。

警告

回退时,文件内容和文件名会以未加密方式传输;只有用户名和密码仍受保护。对于机密数据,请将数据通道设为 必需 并使用其他网络,或者改用 SFTP。

该设置会随个人收藏一起存储。另请参阅故障排除:FTP 数据通道。

带有数据通道选项的 FTPS 对话框
带有数据通道选项的 FTPS 对话框

S3 和 S3 兼容存储

S3 可连接到 Amazon S3 及兼容服务。Bucket 和前缀会显示为文件夹。

字段含义
提供商Amazon S3、Cloudflare R2、MinIO、Backblaze B2、Wasabi、DigitalOcean Spaces、Hetzner Object Storage 或 其他 S3 兼容服务。预设会填写端点和区域。
账户 ID仅限 Cloudflare R2(Cloudflare 仪表板 › R2 › Account ID)。
区域、端点端点通常跟随区域。如果某个 Bucket 位于其他区域,Manta 会自行更正。
登录方式AWS 配置文件(来自 ~/.aws/credentials 的密钥)、访问密钥(访问密钥 ID 和私密密钥)或 公开(用于公开的 Bucket)。
Bucket可选,否则你会看到所有 Bucket。
路径样式寻址MinIO 和大多数自托管服务器需要此项。
带有提供商预设的 S3 对话框
带有提供商预设的 S3 对话框

值得了解:

  • 在 Bucket 内重新命名和移动,在后台实际上是“拷贝后删除”。超过 5 GB 的对象无法重新命名。
  • 在 S3 中无法设置修改日期和权限。
  • 如果某个“文件夹”没有自己的文件夹标记,删除其中最后一个文件后,该文件夹就会消失。
  • 使用 SSO、credential_process 或 assume-role 的 AWS 配置文件无法使用,只支持静态密钥。
  • 如果你的 Mac 时钟偏差超过 15 分钟,S3 会拒绝请求(“你的 Mac 时钟不准确”)。

WebDAV

WebDAV 可连接 Nextcloud、ownCloud、NAS 系统(Synology、QNAP)、Apache 或 nginx 服务器以及其他 WebDAV 服务。

字段含义
服务器、端口服务器地址。你可以粘贴完整的 URL,例如 https://cloud.example.com/remote.php/dav/files/anna;Manta 会自动填写各字段。
安全性HTTPS(端口 443)或 HTTP(未加密)(端口 80)。
用户、登录方式密码 或 匿名。Manta 支持 Basic 和 Digest 认证。
服务器类型WebDAV 服务器、Nextcloud 或 ownCloud。Nextcloud 和 ownCloud 会填写 WebDAV 路径 /remote.php/dav/files/<用户名>。
WebDAV 路径WebDAV 文件夹在服务器上的起始位置,例如 /dav。留空:服务器根目录。
文件夹可选——要在其中打开的文件夹。

须知:

  • 证书由 macOS 检查,与 Safari 浏览器相同。自签名证书在“钥匙串访问”中设为信任后即可使用。
  • 中断的下载会从中断处继续。中断的上传会重新开始传输该文件(WebDAV 无法追加到文件)。
  • 在同一服务器内拷贝时,使用服务器自身的拷贝功能(无需下载再上传)。
  • 在服务器允许的情况下(Nextcloud、ownCloud)可以设置修改日期;否则拷贝的文件使用上传时间。

提示

如果 Nextcloud 或 ownCloud 启用了双重认证,请使用 应用密码 登录(网页界面中的“设置”→“安全”),而不是你的普通密码。

警告

使用 HTTP(未加密) 时,密码和所有文件都以未加密方式传输。请仅在你信任的网络中使用 HTTP。

使用 Nextcloud 预设的 WebDAV 连接对话框
使用 Nextcloud 预设的 WebDAV 连接对话框

SMB

SMB 可打开 Windows 电脑、NAS 系统和其他 Mac 上的共享点。连接由 macOS 本身建立(与 Finder 中的 连接服务器 相同),并将共享点装载到 /Volumes;之后 Manta 会像本地文件夹一样显示它。

字段含义
服务器服务器的名称或地址,例如 nas.local。smb://服务器/共享点/文件夹 会填写所有字段。
用户、登录方式密码 或 客人(无需密码——或使用你的 Kerberos 票据或存储在钥匙串中的密码)。
共享点要打开的共享点。浏览… 会列出服务器的共享点;点按一个即可选择。
文件夹可选——共享点中的某个文件夹。

须知:

  • 已装载的共享点(例如由 Finder 装载)会按原样使用,断开连接后仍保持装载。由 Manta 装载的共享点会在断开连接或退出 Manta 时再次推出。
  • 位置标签会显示例如“SMB · nas.local/Team”。
  • 中断的拷贝会从中断处继续。如果共享点消失(网络变化、睡眠),Manta 会在重试前重新装载它。
  • 共享点列表来自 smbutil,不使用密码(客人、Kerberos 或钥匙串)。如果服务器需要密码才能列出共享点,请直接手动输入共享点名称。
显示共享点列表的 SMB 连接对话框
显示共享点列表的 SMB 连接对话框

边栏中的网络宗卷

你在 Finder 中连接的共享点(SMB、AFP、NFS、WebDAV)会以网络图标显示在 设备 下。将指针悬停在其上并点按推出图标(推出)即可卸载。装载了新的内容后,请点按 设备 旁边的箭头。

Docker 和 Kubernetes

Manta 可以像打开文件夹一样打开 容器内 的文件。它使用 docker 和 kubectl 命令,这些命令必须已安装在你的 Mac 上。

从边栏打开

最快的方法:点按边栏 容器 部分中的某个容器。它会在其工作目录中打开。

从对话框打开

  1. 按下 ⌘K 并选择 容器。
  2. 选择 引擎:Docker 或 Kubernetes。
  3. Docker:从列表中选取容器,或输入其名称或 ID。Kubernetes:选择 上下文、命名空间、Pod,必要时再选择容器。
  4. 点按 连接。

个人收藏会 按名称 存储容器,因此重新创建容器后,个人收藏仍然有效。

连接对话框中的容器选择器
连接对话框中的容器选择器

已停止的容器和没有 Shell 的映像

  • 已停止的容器 会以 只读 方式打开(已停止 标签)。你可以将文件拷贝出来;若要进行更改,请先启动容器(在边栏中右键点按 → 启动)。
  • 没有 Shell 的容器(distroless 或 scratch 映像)同样是只读的。
  • Manta 会整体读取已停止容器中的文件夹;如果超过 512 MB,它会提示“太大”。这时请启动容器。

容器中的 Shell

右键点按 → 在容器中打开 Shell(命令面板中也有)会在面板下方的终端中打开容器内的 Shell,并直接位于你正在查看的文件夹中。请参阅终端。

说明

Manta 只会更改你亲自操作的文件。只有当你在边栏中选取时,它才会启动、重新启动或停止容器,并且从不移除容器。

将连接存为个人收藏

  1. 在连接对话框中打开 添加到个人收藏。
  2. 可以为边栏输入一个名称。
  3. 可选:记住密码(或 记住密码短语、记住私密密钥)。

说明

记住的密码、密码短语和 S3 私密密钥存储在 macOS 钥匙串 中(登录钥匙串,项目“com.manta-filemanager.manta.server”,账户例如 sftp://user@host:22),而不是存储在 favorites.json 中。该文件只记录存在这样一个项目。Manta 会在你连接时读取密码;macOS 可能会询问一次是否允许 Manta 使用钥匙串。

旧版本曾将记住的密码以未加密方式存储在 favorites.json 中。首次启动时,Manta 会将它们移到钥匙串,并重写该文件,不再包含这些密码。如果此操作失败(钥匙串已锁定或访问被拒绝),文件会保持不变,Manta 会在下次启动时再试一次。

移除个人收藏时,也会删除其钥匙串项目(除非同一服务器账户的其他个人收藏仍在使用它)。编辑个人收藏时,密码字段会显示“已存储在钥匙串中”;将其留空即可保留已存储的密码。

若要更改个人收藏,请右键点按 → 编辑连接…(“编辑连接”对话框)。

断开连接

将指针移到边栏 服务器 下方的连接上,然后点按推出图标(断开连接)。之前显示该服务器的面板会显示“已断开连接”。对于 SMB 共享点,如果是 Manta 装载的,断开连接时也会将其推出。

无法正常工作时

Manta 会将技术错误转换为通俗易懂的消息,并附上提示。最常见的消息:

消息你可以怎么做
找不到“host”检查服务器地址是否有拼写错误。
host 拒绝了端口 … 上的连接端口和协议是否正确?服务器是否正在运行?
host 没有响应检查你的网络、VPN 和防火墙。
服务器未接受这些凭证检查用户名和密码,或尝试其他登录方式。
ssh-agent 中没有可用的密钥使用 ssh-add 添加密钥。
无法建立安全连接服务器不支持此端口上的 FTPS,或其证书不受信任。
Docker 未运行启动 Docker Desktop。
未安装 kubectlbrew install kubectl

更多帮助:故障排除。

限制

  • 不支持隐式 FTPS(端口 990)。
  • Kubernetes:不支持端口转发,不支持临时调试容器;Pod 需要有 sh。
  • 写入容器通过 cat 完成;新文件归 exec 运行时所用的用户所有。
  • Google Drive 等云服务不在这里连接,而是通过 Mac 上的云端文件夹访问,请参阅云存储。Manta 本身不带 Google 登录;只有当你在设置中输入 你自己的 OAuth 客户端后,“Google Drive”才会也出现在这里,请参阅面向专家的 Google Drive。
  • WebDAV:不支持锁定(LOCK);中断的上传会重新开始。
  • SMB 需要 macOS 自身的 SMB 支持;Manta 没有自己的 SMB 客户端。使用非默认端口时,共享点列表可能无法使用。