

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# EFS 問題のトラブルシューティング
<a name="efs-troubleshooting"></a>

このセクションでは、Amazon EFS ストレージに関する問題の考えられる解決策について説明します。

**Topics**
+ [Amazon EFS の問題をトラブルシューティングする](#efs-issues)

## Amazon EFS の問題をトラブルシューティングする
<a name="efs-issues"></a>

このセクションでは、以下の Amazon EFS の問題に対して考えられる解決策について説明します。

**Topics**
+ [Amazon EFS サービス管理ユーザーのトラブルシューティング](#transfer-service-managed-efs)
+ [POSIX プロファイルが見つからない場合のトラブルシューティング](#missing-posix-profile)
+ [Amazon EFS による論理ディレクトリのトラブルシューティング](#logical-dir-efs-no-directory)

### Amazon EFS サービス管理ユーザーのトラブルシューティング
<a name="transfer-service-managed-efs"></a>

**説明**

`sftp` コマンドを実行した場合にプロンプトの代わりに次のメッセージが表示されることがあります。

```
Couldn't canonicalize: Permission denied
           Need cwd
```

**原因**

 AWS Identity and Access Management (IAM) ユーザーのロールには、Amazon Elastic File System (Amazon EFS) にアクセスするアクセス許可がありません。

 **対策** 

ユーザーのロールについてポリシーのアクセス権限を増やします。などの AWS 管理ポリシーを追加できます`AmazonElasticFileSystemClientFullAccess`。

### POSIX プロファイルが見つからない場合のトラブルシューティング
<a name="missing-posix-profile"></a>

**説明**

サーバーに Amazon EFS ストレージを使用していて、カスタム ID プロバイダーを使用している場合は、POSIX プロファイルを AWS Lambda 関数に提供する必要があります。

**原因**

考えられる原因のひとつは、 AWS Lambdaに対応した Amazon API Gateway のメソッドを作成するためのテンプレートが、現在 POSIX 情報を含んでいないことです。

POSIX 情報を提供した場合、POSIX 情報を提供するために使用したフォーマットが、Transfer Family によって正しく解析されていない可能性があります。

**解決策**

`PosixProfile` パラメータに JSON 要素を Transfer Family に提供していることを確認します。

例えば、Python を使用している場合、`PosixProfile` パラメータをパースする箇所に以下の行を追加することができる：

```
if PosixProfile: 
        response_data["PosixProfile"] = json.loads(PosixProfile)
```

また、JavaScript では、次の行を追加できます。ここで、`{{uid-value}}` `{{gid-value}}` とは、それぞれユーザー ID (UID) とグループ ID (GID) を表す 0 以上の整数です。

```
PosixProfile: {"Uid": {{uid-value}}, "Gid": {{gid-value}}},
```

 

これらのコード例では、`PosixProfile` パラメータを文字列としてではなく、JSON オブジェクトとして Transfer Family に送信しています。

また、 内に AWS Secrets Managerは、次のように `PosixProfile`パラメータを保存する必要があります。`{{your-uid}}`と`{{your-gid}}`を GID と UID の実際の値に置き換えてください。

```
{"Uid": {{your-uid}}, "Gid": {{your-gid}}, "SecondaryGids": []}
```



### Amazon EFS による論理ディレクトリのトラブルシューティング
<a name="logical-dir-efs-no-directory"></a>

**説明**

ユーザーのホームディレクトリが存在せず、ユーザーが `ls` コマンドを実行すると、システムは次のように応答します。

```
sftp> ls
remote readdir ("/"): No such file or directory
```

**原因**

Transfer Family サーバーが Amazon EFS を使用している場合は、ユーザーが論理ホームディレクトリで作業するには、ユーザーのホームディレクトリを読み取りおよび書き込みアクセスで作成する必要があります。ユーザーは自分の論理ホームディレクトリに対する `mkdir` の権限がないため、このディレクトリを自分で作成することはできません。

**解決策**

親ディレクトリへの管理アクセス権を持つユーザーは、ユーザーの論理ホームディレクトリを作成する必要があります。