

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 故障排除 Nimble Studio File Transfer
<a name="troubleshooting"></a>

如果您在使用 Nimble Studio File Transfer 时遇到问题，请根据以下信息来帮助您对问题进行故障排除。

建议您按照 [日志记录](monitoring.md#monitoring-logging) 中的说明开启日志记录。

**Topics**
+ [生成支持文件](#troubleshooting-support-file)
+ [排除 GUI 的故障](#troubleshooting-gui)
+ [排除 CLI 的故障](#troubleshooting-cli)

## 生成支持文件
<a name="troubleshooting-support-file"></a>

您可以生成支持文件来帮助进行故障排除。支持文件是您可以提供给支持工程师的 zip 文件。

------
#### [ GUI ]

**使用图形用户界面 (GUI) 生成支持文件**

1. 打开 File Transfer。

   1. 转到**开始菜单**并搜索 **File Transfer**。

   1. 从列表中选择 **Nimble Studio File Transfer**。

1. 选择屏幕右上角的下拉菜单，然后选择**支持**。

1. 文件浏览器菜单打开。选择要下载文件的位置。

------
#### [ CLI ]

**使用 CLI 生成支持文件**
+ 打开一个终端，并运行以下命令：`filetransfer support-file`

  1. 这将在 `C:\Users\username\.filetransfer\support-files\support-file-20230310-110834.zip` (Windows) 或 `/Users/username/.tiletransfer/support-files/supportfile-20230227-185212.zip` (Linux&macOS) 中生成一个 zip 文件。

  1. CLI 将输出生成文件的路径。

------

## 排除 GUI 的故障
<a name="troubleshooting-gui"></a>

GUI 中的许多错误都可以通过命令行界面 (CLI) 的故障排除部分来解决。如果您在 GUI 中收到错误，请尝试执行以下步骤：

1. 重新启动 File Transfer。

1. 在 macOS 上打开终端或在 Windows 上打开 `cmd.exe`。

1. 运行以下命令以启动活动会话：`filetransfer daemon`

1. 像往常一样开始上传。在应用程序中收到错误后，检查 CLI 窗口。其中应该会显示一个错误，

您可以在 [排除 CLI 的故障](#troubleshooting-cli) 部分排除故障。

### 从 v1.x 升级到 v2.0 后无法连接 File Transfer
<a name="troubleshooting-gui-session-v2-0"></a>

**问题**：您从 File Transfer v1.x 升级到 v2.0 后，File Transfer GUI 无法进入**已连接**状态。

**解决方案**：从**本地文件系统**下拉菜单中删除**本地进程守护程序**。我们更新了组件的命名，某些客户可能会受到影响，具体取决于他们之前的配置。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_cn/nimble-studio/latest/filetransfer-guide/images/nsft-troubleshooting.png)


### File Transfer 无法连接
<a name="troubleshooting-gui-session"></a>

**问题**：File Transfer GUI 无法进入**已连接**状态。

**解决方案**：更新 YAML 文件。

1. 打开首选文本编辑器中的配置文件。

   1. 配置文件位于 `C:\Users\username\.filetransfer\configuration.yaml` (Windows) 或 `~/.filetransfer/configuration.yaml` (Linux&macOS) 中。

1. 验证文件中是否存在 `api_server.enabled` 并且已将其设置为 `true`。

   1. 如果将其设置为 `false`，则 GUI 将无法与 File Transfer CLI 通信，并且所有 GUI 功能都将被禁用。

   1. 如果未在 `configuration.yaml` 中定义 `api_server.enabled`，则默认为 `true`。

## 排除 CLI 的故障
<a name="troubleshooting-cli"></a>

### 凭证过期或无效
<a name="troubleshooting-expired-credentials"></a>



**问题**：如果您提供的 File Transfer 的凭证有问题，您将收到以下错误之一。

```
FATAL  *[*202X-XX-XX XX:XX:XX*]* Failed establishing a session to AWS:InvalidAccessKeyId: The AWS Access Key Id you provided does not exist *in* our records. status code: 403, request id: FFYEFCKZX6F1YN8H, host id: aFtPOImvXdJQ+Ukf8SYRobDx4xmZsikoJUyJszJf3Wv74w0Q5cP9TCDz/YLKwSi53hc0hBScd58*=*
or
FATAL  *[*202X-XX-XX XX:XX:XX*]* Failed establishing a session to AWS:ExpiredToken: The provided token has expired. status code: 400, request id: 130NC8C984YZJMJH, host id: j7aA3Zs/O/H3QMYeoDv5Y62o7Mu/9tvi5m7jUVqTnveLZX4qrl/bKJl1j3dLVnhVda/WaUbEgO8*=*
```

**解决方案**：按照《AWS Command Line Interface 用户指南》中[配置和凭证文件设置](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)页面中的说明刷新 AWS 配置文件的凭证。

### 无效的传输配置文件
<a name="troubleshooting-invalid-transfer-profile"></a>

**错误：**：致命 [202X-XX-XX XX:XX:XX] 传输配置文件无效。有效的传输配置文件：

**问题**：您使用的远程配置名称尚未设置。

**解决方案**：更新远程配置。

1. 选择下拉菜单 (![\[The menu icon.\]](http://docs.aws.amazon.com/zh_cn/nimble-studio/latest/filetransfer-guide/images/icon-three-horizontal.png))。然后选择**设置**。

1. 如果**有效远程配置**部分下未列出任何远程配置，请按照[步骤 2：配置 File Transfer](getting-started.md#getting-started-configure)中的说明添加远程配置。

1. 如果有远程配置，请确保正确拼写该远程配置的名称。

1. 如果已正确拼写，请检查错误的有效远程配置部分，查看是否列出了特定的远程配置。

1. 如果仍然看不到远程配置，请确保您的 YAML 格式正确且编辑的 YAML 文件正确无误。YAML 文件与登录的用户绑定。
**重要**  
在 Windows 上，不要运行 CMD.exe，也不要以管理员身份运行 PowerShell。如果这样做，计算机将尝试读取本地用户文件中没有的配置文件。

### TCP I/O
<a name="troubleshooting-tcp-io"></a>

**错误**：致命 [202X-XX-XX XX:XX:XX] 不可恢复错误：可重试：可重试：RequestError：

 **问题 1**：您的计算机已断开互联网连接，并且与 S3 存储桶的连接中断。

**解决方案 1**：在这种情况下，检查网络中断或是否存在任何防火墙限制。

**问题 2**：存储媒体的硬盘无法承受 File Transfer 对其施加的负荷。这会导致与媒体的连接中断。这在网络驱动程序中可能很常见。

**解决方案 2**：降低 `1` 的最大活动传输量和线程数，然后重试上传。

------
#### [ GUI ]

**使用 GUI 降低 `1` 的最大活动传输量和线程数**

1. 打开 File Transfer。

   1. 转到**开始菜单**并搜索 **File Transfer**。

   1. 从列表中选择 **Nimble Studio File Transfer**。

1. 选择屏幕右上角的下拉菜单，然后选择**设置**。

1. 在 **S3 设置**部分，将**最大活动传输量**和**线程数**更改为 **1**。

1. 选择**保存**并重试上传。

------
#### [ CLI ]

**使用 CLI 降低 `1` 的最大活动传输量和线程数**

1. 使用计算机上的任何文本编辑软件打开配置文件。

   1. Windows：导航到您计算机上的 `User/<your username>` 文件夹。打开 `.filetransfer` 文件夹，用文本编辑器打开 `filetransfer.yaml` 文件。

   1. macOS：输入 **Cmd\$1Shift\$1G**。然后输入 **\$1/.filetransfer**。使用文本编辑器打开 `filetransfer.yaml` 文件。

   1. Linux：使用任何文本编辑器打开 `filetransfer.yaml` 文件。文件位于 `~/.filetransfer/configuration.yaml` 中。

1. 将 `max_active_transfers` 和 `threads` 的值更新为 `1`。

1. 保存配置文件。

------

缓慢提高最大活动传输量和线程数的值，直到达到不会让硬盘不堪重负的配置。

### 绝对路径
<a name="troubleshooting-absolute-path"></a>

**错误**：警告 [202X-XX-XX XX:XX:XX] 不支持绝对路径，忽略/me dia/drive

**问题**：收到此警告表示您使用的绝对路径不受支持。绝对路径包含驱动器盘符。对于 Windows，为 `C:\`。对于 Linux 和 macOS, 这是前导：`/`。

**解决方案**：如果您位于根级别，请删除前导 `C:\` (Windows) 或 `/` (Linux&macOS)。否则，请替换当前工作目录的相对路径。

### 无法打开连接
<a name="troubleshooting-connection"></a>

**错误**：无法打开连接。

**问题 1**：另一个 File Transfer 应用程序正在运行。

**解决方案 1**：关闭所有其他正在运行的 File Transfer 应用程序。或者，您也可以在配置文件中将 `api_server.enabled` 更改为 false。

**问题 2**：File Transfer 正在尝试在无法监听的端口上进行监听。如果您的用户无权监听该端口，或者您使用的是端口 1023 或更低端口，则可能会发生这种情况。这些端口被视为特权端口。这些端口要求您以管理员身份运行才能对其进行监听。

**解决方案 2**：确保任何正在运行 File Transfer 的人员都有权监听这些端口。还可以将端口更改为 1024 或更高端口。

**问题 3**：另一个程序正在使用相同的端口。

**解决方案 3**：停止使用相同端口的另一个程序。