

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 故障診斷：檔案閘道問題
<a name="troubleshooting-file-gateway-issues"></a>

您可以設定檔案閘道，將日誌項目寫入 Amazon CloudWatch 日誌群組。如果您這樣做，您會收到有關閘道運作狀態和閘道遇到之任何錯誤的通知。您可以在 CloudWatch Logs 中找到這些錯誤和運作狀態通知的相關資訊。

在下列各節，您可以找到相關資訊，協助您了解每個錯誤的原因、運作狀態通知，以及修正問題的方法。

**Topics**
+ [錯誤：1344 (0x00000540)](#troubleshoot-copying-files-to-s3)
+ [錯誤：GatewayClockOutOfSync](#troubleshoot-logging-errors-gatewayclockoutofsync)
+ [錯誤：InaccessibleStorageClass](#troubleshoot-logging-errors-inaccessiblestorageclass)
+ [錯誤：InvalidObjectState](#troubleshoot-logging-errors-invalidobjectstate)
+ [錯誤：ObjectMissing](#troubleshoot-logging-errors-objectmissing)
+ [錯誤：RoleTrustRelationshipInvalid](#misconfig-trust)
+ [錯誤：S3AccessDenied](#troubleshoot-logging-errors-s3accessdenied)
+ [錯誤：DroppedNotifications](#troubleshoot-logging-errors-droppednotifications)
+ [通知：HardReboot](#troubleshoot-hardreboot-notification)
+ [通知：重新啟動](#troubleshoot-reboot-notification)
+ [故障診斷：安全性掃描會顯示開放的 NFS 連接埠](#troubleshoot-open-nfs-ports)
+ [故障診斷：使用 CloudWatch 指標](#troubleshooting-with-cw-metrics)

## 錯誤：1344 (0x00000540)
<a name="troubleshoot-copying-files-to-s3"></a>

將檔案遷移至 Amazon S3 時，`ERROR 1344 (0x00000540)`如果您嘗試將超過 10 個存取控制項目 (ACEs) 的檔案複製到 Amazon S3，您可能會遇到 。存取控制項目會列在存取控制清單 (ACL) 中。

 Amazon S3 File Gateway 每個指定的檔案或資料夾只能保留 10 個 ACE 項目。

**解決錯誤 1344：將 NTFS 安全性複製到目的地目錄。**

針對包含超過 10 個項目的檔案或資料夾，減少 Windows 許可中的項目數量。常見的方法是建立包含項目完整清單的群組，然後使用該單一群組取代項目清單。一旦項目數量少於 10，您可以重試將檔案或資料夾複製到閘道。

## 錯誤：GatewayClockOutOfSync
<a name="troubleshoot-logging-errors-gatewayclockoutofsync"></a>

當閘道偵測到本機系統時間和 AWS Storage Gateway伺服器報告的時間之間有 5 分鐘或更多的差異時，您可能會收到`GatewayClockOutOfSync`錯誤。時鐘同步問題可能會對閘道與 之間的連線產生負面影響 AWS。如果閘道時鐘不同步，NFS 和 SMB 連線可能會發生 I/O 錯誤，而 SMB 使用者可能會發生身分驗證錯誤。

**解決 GatewayClockOutOfSync 錯誤**
+ 檢查閘道和 NTP 伺服器之間的網路組態。如需同步閘道 VM 時間和更新 NTP 伺服器組態的詳細資訊，請參閱[為您的閘道設定網路時間協定 (NTP) 伺服器](https://docs.aws.amazon.com/filegateway/latest/files3/manage-on-premises-fgw.html#MaintenanceTimeSync-fgw)。

## 錯誤：InaccessibleStorageClass
<a name="troubleshoot-logging-errors-inaccessiblestorageclass"></a>

當物件移出 Amazon S3 Standard 儲存類別時，您可能會收到`InaccessibleStorageClass`錯誤。

檔案閘道通常會在嘗試將物件上傳至 或從 Amazon S3 儲存貯體讀取物件時遇到此錯誤。一般而言，此錯誤表示物件已移至 Amazon Glacier，且位於 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive 儲存類別。

您的 S3 檔案閘道可以產生快取報告，列出閘道快取中目前因此錯誤而無法上傳至 Amazon S3 的所有檔案。此報告中的資訊可協助您使用 支援 來解決閘道、Amazon S3 或 IAM 組態的問題。如需詳細資訊，請參閱[建立快取報告](https://docs.aws.amazon.com/filegateway/latest/files3/create-cache-report.html)。

**解決 InaccessibleStorageClass 錯誤**
+ 將物件從 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive 儲存類別還原至 S3 中的原始儲存類別。

  如果您將物件還原至 S3 儲存貯體以修正上傳錯誤，則檔案最終會上傳。如果您還原物件以修正讀取錯誤，檔案閘道的 SMB 或 NFS 用戶端即可讀取檔案。

## 錯誤：InvalidObjectState
<a name="troubleshoot-logging-errors-invalidobjectstate"></a>

當指定檔案閘道以外的寫入器修改指定 Amazon S3 儲存貯體中的指定檔案時，您可能會收到`InvalidObjectState`錯誤。因此，檔案閘道的檔案狀態與 Amazon S3 中的檔案狀態不相符。任何檔案後續上傳至 Amazon S3 或從 Amazon S3 擷取檔案都會失敗。

您的 S3 檔案閘道可以產生快取報告，列出閘道快取中目前因此錯誤而無法上傳至 Amazon S3 的所有檔案。此報告中的資訊可協助您使用 支援 來解決閘道、Amazon S3 或 IAM 組態的問題。如需詳細資訊，請參閱[建立快取報告](https://docs.aws.amazon.com/filegateway/latest/files3/create-cache-report.html)。

**解決 InvalidObjectState 錯誤**

如果修改檔案的操作是 `S3Upload`或 `S3GetObject`，請執行下列動作：

1. 將檔案的最新副本儲存至 SMB 或 NFS 用戶端的本機檔案系統 （您需要在步驟 4 中使用此檔案副本）。如果 Amazon S3 中的 檔案版本是最新版本，請下載該版本。您可以使用 AWS 管理主控台 或 來執行此操作 AWS CLI。

1. 使用 AWS 管理主控台 或 在 Amazon S3 中刪除 檔案 AWS CLI。

1. 使用 SMB 或 NFS 用戶端從檔案閘道刪除檔案。

1. 使用 SMB 或 NFS 用戶端，將您在步驟 1 中儲存的最新版本檔案複製到 Amazon S3。透過您的檔案閘道執行此操作。

## 錯誤：ObjectMissing
<a name="troubleshoot-logging-errors-objectmissing"></a>

當指定檔案閘道以外的寫入器從 S3 儲存貯體刪除指定的檔案時，您可能會收到`ObjectMissing`錯誤。任何後續上傳至 Amazon S3 或從 Amazon S3 擷取物件都會失敗。

您的 S3 檔案閘道可以產生快取報告，列出閘道快取中目前因此錯誤而無法上傳至 Amazon S3 的所有檔案。此報告中的資訊可協助您使用 支援 來解決閘道、Amazon S3 或 IAM 組態的問題。如需詳細資訊，請參閱[建立快取報告](https://docs.aws.amazon.com/filegateway/latest/files3/create-cache-report.html)。

**解決 ObjectMissing 錯誤**

如果修改檔案的操作是 `S3Upload`或 `S3GetObject`，請執行下列動作：

1. 將檔案的最新副本儲存至 SMB 或 NFS 用戶端的本機檔案系統 （您需要在步驟 3 中使用此檔案副本）。

1. 使用 SMB 或 NFS 用戶端從檔案閘道刪除檔案。

1. 使用 SMB 或 NFS 用戶端複製您在步驟 1 中儲存的最新版本檔案。透過您的檔案閘道執行此操作。

## 錯誤：RoleTrustRelationshipInvalid
<a name="misconfig-trust"></a>

當檔案共享的 IAM 角色具有設定錯誤的 IAM 信任關係 （亦即，IAM 角色不信任名為 的 Storage Gateway 主體`storagegateway.amazonaws.com`) 時，您會收到此錯誤。因此，檔案閘道將無法取得登入資料，在支援檔案共用的 S3 儲存貯體上執行任何操作。

**解決 RoleTrustRelationshipInvalid 錯誤**
+ 使用 IAM 主控台或 IAM API 將 納入`storagegateway.amazonaws.com`為檔案共享 IAMrole 信任的委託人。如需 IAM 角色的資訊，請參閱[教學課程：使用 IAM 角色將存取權委派給 AWS 帳戶](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html)。

## 錯誤：S3AccessDenied
<a name="troubleshoot-logging-errors-s3accessdenied"></a>

您可能會收到檔案共享的 Amazon S3 儲存貯體存取 AWS Identity and Access Management (IAM) 角色的`S3AccessDenied`錯誤。在此情況下，錯誤`roleArn`中由 指定的 S3 儲存貯體存取 IAM 角色不允許涉及的操作。由於 Amazon S3 字首所指定目錄中物件的許可，因此不允許 操作。

您的 S3 檔案閘道可以產生快取報告，列出閘道快取中目前因此錯誤而無法上傳至 Amazon S3 的所有檔案。此報告中的資訊可協助您使用 支援 來解決閘道、Amazon S3 或 IAM 組態的問題。如需詳細資訊，請參閱[建立快取報告](https://docs.aws.amazon.com/filegateway/latest/files3/create-cache-report.html)。

**解決 S3AccessDenied 錯誤**
+ 修改檔案閘道運作狀態日誌`roleArn`中連接至 的 Amazon S3 存取政策，以允許 Amazon S3 操作的許可。請確認存取政策可允許導致該錯誤的操作許可。此外，請允許 `prefix` 之日誌中所指定的目錄許可。如需 Amazon S3 許可的相關資訊，請參閱《Amazon Simple Storage Service 使用者指南》中的在[政策中指定許可](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html)。 **

  這些操作可能會導致 `S3AccessDenied` 錯誤發生：
  + `S3HeadObject`
  + `S3GetObject`
  + `S3ListObjects`
  + `S3DeleteObject`
  + `S3PutObject`

## 錯誤：DroppedNotifications
<a name="troubleshoot-logging-errors-droppednotifications"></a>

當閘道根磁碟上的可用儲存空間小於 1 GB，或在 1 分鐘內產生超過 100 個運作狀態通知時，您可能會看到`DroppedNotifications`錯誤，而不是其他預期的 CloudWatch 日誌項目類型。在這些情況下，閘道會停止產生詳細的 CloudWatch 日誌通知做為預防措施。

**解決 DroppedNotifications 錯誤**

1. 檢查 Storage Gateway `Root Disk Usage` 主控台中閘道的**監控**索引標籤上的指標，以判斷可用的根磁碟空間是否不足。

1. 如果可用空間小於 1 GB，請增加閘道根儲存磁碟的大小。如需說明，請參閱虛擬機器 Hypervisor 的文件。

   若要增加 Amazon EC2 閘道的根磁碟大小，請參閱《*Amazon Elastic Compute Cloud 使用者指南*》中的[請求修改 EBS 磁碟區](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/requesting-ebs-volume-modifications.html)。
**注意**  
無法增加 AWS Storage Gateway 硬體設備的根磁碟大小。

1. 重新啟動您的閘道。

## 通知：HardReboot
<a name="troubleshoot-hardreboot-notification"></a>

當閘道 VM 意外重新啟動時，您可能會收到 `HardReboot` 通知。這種重新啟動可能是因為電源中斷、硬體故障或其他事件。對於 VMware 閘道，vSphere 高可用性應用程式監控重設可能會導致此事件。

當閘道在這種環境中執行時，請檢查 `HealthCheckFailure` 通知是否存在，並參閱 VM 的 VMware 事件記錄。

## 通知：重新啟動
<a name="troubleshoot-reboot-notification"></a>

當閘道 VM 重新啟動時，您可能會收到重新啟動通知。您可以使用 VM Hypervisor Management 主控台或 Storage Gateway 主控台來重新啟動閘道 VM。您也可以在閘道維護週期期間使用閘道軟體來重新啟動。

如果重新啟動的時間在閘道所設定之[維護開始時間](MaintenanceManagingUpdate-common.md)的 10 分鐘以內，此重新啟動可能是正常的情況，而不是任何問題的徵兆。如果重新啟動很常在維護時段外發生，請檢查閘道是否已手動重新啟動。

## 故障診斷：安全性掃描會顯示開放的 NFS 連接埠
<a name="troubleshoot-open-nfs-ports"></a>

某些 NFS 連接埠預設為啟用，即使在僅與 SMB 檔案共用搭配使用的閘道上也是如此。如果您使用第三方安全軟體，例如 Qualys 來掃描部署檔案閘道的網路，掃描結果可能會將這些開放的 NFS 連接埠報告為潛在的安全漏洞。如果您只將閘道與 SMB 檔案共用搭配使用，而且基於安全考量而想要停用未使用的 NFS 連接埠，請使用下列程序：

**若要在檔案閘道上停用 NFS 連接埠：**

1. 使用 中概述的程序存取閘道本機主控台命令提示[在本機主控台上執行 Storage Gateway 命令](MaintenanceGatewayConsole-fgw.md)。

1. 輸入下列命令以停用 NFS 流量：

   **IPv4**

   ```
   iptables -I INPUT -p udp -m udp --dport 111 -j DROP
   iptables -I INPUT -p udp -m udp --dport 2049 -j DROP
   iptables -I INPUT -p udp -m udp --dport 20048 -j DROP
   iptables -I INPUT -p tcp -m tcp --dport 111 -j DROP
   iptables -I INPUT -p tcp -m tcp --dport 2049 -j DROP
   iptables -I INPUT -p tcp -m tcp --dport 20048 -j DROP
   ```

   **IPv6**

   ```
   ip6tables -I INPUT -p udp -m udp --dport 111 -j DROP
   ip6tables -I INPUT -p udp -m udp --dport 2049 -j DROP
   ip6tables -I INPUT -p udp -m udp --dport 20048 -j DROP
   ip6tables -I INPUT -p tcp -m tcp --dport 111 -j DROP
   ip6tables -I INPUT -p tcp -m tcp --dport 2049 -j DROP
   ip6tables -I INPUT -p tcp -m tcp --dport 20048 -j DROP
   ```

1. 輸入下列命令以確認封鎖的 NFS 連接埠出現在 IP 資料表中：

   **IPv4**

   ```
   iptables -n -L -v --line-numbers
   ```

   **IPv6**

   ```
   ip6tables -n -L -v --line-numbers
   ```

## 故障診斷：使用 CloudWatch 指標
<a name="troubleshooting-with-cw-metrics"></a>

您可以在下面找到使用 Amazon CloudWatch 指標搭配 Storage Gateway 處理問題之動作的相關資訊。

**Topics**
+ [瀏覽目錄時，您的閘道反應緩慢](#slow-gateway)
+ [您的閘道未回應](#gateway-not-responding)
+ [您的閘道將資料傳輸到 Amazon S3 的速度緩慢](#slow-data-transfer-to-S3)
+ [您的閘道執行的 Amazon S3 操作超過預期](#gateway-performing-more-s3-operations)
+ [您在 Amazon S3 儲存貯體中看不到檔案](#files-missing-s3-bucket)
+ [您的閘道備份任務失敗，或寫入閘道時發生錯誤](#backup-job-fails)

### 瀏覽目錄時，您的閘道反應緩慢
<a name="slow-gateway"></a>

如果您的檔案閘道在執行**ls**命令或瀏覽目錄時反應緩慢，請檢查 `IndexFetch`和 `IndexEviction` CloudWatch 指標：
+ 當您執行`ls`命令或瀏覽目錄時，如果`IndexFetch`指標大於 0，您的 File Gateway 會啟動，但不提供有關受影響目錄內容的資訊，且必須存取 Amazon S3。後續列出該目錄內容的動作應會更快完成。
+ 如果`IndexEviction`指標大於 0，表示您的檔案閘道已達到當時可在其快取中管理的限制。在這種情況下，您的檔案閘道必須從最近最少存取的目錄釋放一些儲存空間，以列出新的目錄。如果經常發生這種情況且效能受到影響，請聯絡 支援。

  與相關 S3 儲存貯體 支援 的內容和建議討論，以根據您的使用案例改善效能。

### 您的閘道未回應
<a name="gateway-not-responding"></a>

如果您的檔案閘道沒有回應，請執行下列動作：
+  如果有最近的重新開機或軟體更新，則請查看 `IOWaitPercent` 指標。此指標會顯示在有未完成磁碟 I/O 請求時 CPU 閒置時間的百分比。在某些情況下，百分比可能偏高 (10 或以上)，而且可能已在伺服器重新啟動或更新後上升。在這些情況下，檔案閘道可能會在重建索引快取至 RAM 時，受到慢速根磁碟的瓶頸。您可以將速度較快的實體磁碟用於根磁碟來解決此問題。
+ 如果`MemUsedBytes`指標與`MemTotalBytes`指標等於或幾乎相同，則檔案閘道會用盡可用的 RAM。請確定您的檔案閘道至少具有所需的 RAM 下限。如果已經這麼做，請考慮根據您的工作負載和使用案例，將更多 RAM 新增至您的檔案閘道。

  如果檔案共享是 SMB，此問題也可能是因為連線到檔案共享的 SMB 用戶端數目所造成。若要查看在任何指定時間連線的用戶端數目，請檢查 `SMBV(1/2/3)Sessions` 指標。如果連接了許多用戶端，您可能需要將更多 RAM 新增至檔案閘道。

### 您的閘道將資料傳輸到 Amazon S3 的速度緩慢
<a name="slow-data-transfer-to-S3"></a>

如果您的檔案閘道將資料傳輸到 Amazon S3 的速度緩慢，請執行下列動作：
+ 如果`CachePercentDirty`指標為 80 或更高，您的檔案閘道將資料寫入磁碟的速度會比將資料上傳至 Amazon S3 的速度更快。考慮增加從檔案閘道上傳的頻寬、新增一或多個快取磁碟，或減慢用戶端寫入速度。
+ 如果`CachePercentDirty`指標很低，請檢查`IoWaitPercent`指標。如果 `IoWaitPercent` 大於 10，您的檔案閘道可能會因為本機快取磁碟的速度而遇到瓶頸。建議將本機固態硬碟 (SSD) 磁碟用於快取，最好是 NVM Express (NVMe)。如果無法取得這種磁碟，請嘗試使用來自個別實體磁碟的多個快取磁碟，以提升效能。
+ 如果 `S3PutObjectRequestTime`、 `S3UploadPartRequestTime`或 `S3GetObjectRequestTime` 很高，可能有網路瓶頸。請嘗試分析您的網路，以確認閘道具有預期的頻寬。

### 您的閘道執行的 Amazon S3 操作超過預期
<a name="gateway-performing-more-s3-operations"></a>

如果您的檔案閘道執行的 Amazon S3 操作超過預期，請檢查 `FilesRenamed` 指標。重新命名操作在 Amazon S3 中執行非常昂貴。最佳化您的工作流程，將重新命名操作的數量降至最低。

### 您在 Amazon S3 儲存貯體中看不到檔案
<a name="files-missing-s3-bucket"></a>

如果您注意到閘道上的檔案未反映在 Amazon S3 儲存貯體中，請檢查 `FilesFailingUpload` 指標。如果指標報告某些檔案上傳失敗，請檢查您的運作狀態通知。當檔案無法上傳時，閘道會產生運作狀態通知，其中包含問題的詳細資訊。

### 您的閘道備份任務失敗，或寫入閘道時發生錯誤
<a name="backup-job-fails"></a>

如果您的檔案閘道備份任務失敗，或寫入檔案閘道時發生錯誤，請執行下列動作：
+ 如果`CachePercentDirty`指標是 90% 或更高，您的檔案閘道就無法接受對磁碟的新寫入，因為快取磁碟上沒有足夠的可用空間。若要查看 File Gateway 上傳至 Amazon S3 的速度，請檢視 `CloudBytesUploaded` 指標。將該指標與 `WriteBytes` 指標進行比較，該指標顯示用戶端將檔案寫入檔案閘道的速度。如果 SMB 用戶端寫入檔案閘道的速度比上傳至 Amazon S3 的速度快，請新增更多快取磁碟，以至少涵蓋備份任務的大小。或者，增加上傳頻寬。
+ 如果備份任務等大型檔案副本失敗，但`CachePercentDirty`指標低於 80%，您的檔案閘道可能會達到用戶端工作階段逾時。若是 SMB，您可使用 PowerShell 命令 `Set-SmbClientConfiguration -SessionTimeout 300` 來增加此逾時設定。執行此命令會將逾時設為 300 秒。

  若是 NFS，請確認用戶端是採用硬性掛載的方式掛載，而非是軟性掛載。