EFS / NFS マウントエラー(permission denied, stale file handle)と解決

  • URLをコピーしました!
目次

概要

AWS EFS やオンプレミスの NFS でマウントを行う際、次のようなエラーが発生することがあります。

mount.nfs4: access denied by server while mounting ...
mount.nfs4: Stale file handle
mount.nfs: Connection timed out

これらは ネットワーク/認証設定/マウント情報の不整合 などが主な原因です。
ここでは、実際の現場でよく発生するパターンとその対処を具体的に解説します。

主な原因と解決方法

原因① セキュリティグループやファイアウォール設定で通信が遮断されている

状況

EFS/NFS サーバーとの通信ができず、タイムアウトやアクセス拒否が発生します。

解決方法

NFS の通信ポート(TCP/UDP 2049)がクライアントからサーバーに許可されているか確認します。

実行例

# サーバーへの疎通確認
telnet <EFSまたはNFSのホスト名> 2049
# または nc コマンド
nc -zv <EFSホスト> 2049

設定例(AWS セキュリティグループ)

  • タイプ: NFS
  • プロトコル: TCP
  • ポート範囲: 2049
  • 送信元: クライアントのVPCまたはサブネット

原因② マウント時のオプション設定ミス(バージョンやIAM)

状況

EFS や NFS のマウントコマンドでオプションが誤っており、認証エラーやパーミッション拒否が発生します。

解決方法

EFS では推奨コマンドを利用します。

実行例(EFS の場合)

sudo mkdir -p /mnt/efs
sudo mount -t efs -o tls fs-xxxxxxxx:/ /mnt/efs

もし NFS バージョンを指定する必要がある場合:

sudo mount -t nfs4 -o nfsvers=4.1 <EFSホスト>:/ /mnt/efs

確認コマンド

mount | grep efs

原因③ IAM / POSIX 権限の不整合(permission denied)

状況

マウント自体はできてもアクセスすると permission denied になるケース。

解決方法

  • EFS の場合、POSIX 権限(UID/GID)IAM ポリシー の両方を確認。
  • NFS の場合、/etc/exports の設定でクライアントが許可されているかを確認。

実行例(EFS側の権限確認)

ls -ld /mnt/efs
# 出力例
drwxrwxr-x 2 ec2-user ec2-user 6144 May 10 12:00 /mnt/efs

実行例(NFSサーバー側)

cat /etc/exports
# 例:
/data 10.0.0.0/24(rw,sync,no_root_squash)

修正例

# クライアントを追加して再エクスポート
sudo exportfs -ra

原因④ stale file handle(古いハンドル情報)

状況

EFS/NFS 上のディレクトリやファイルが削除・再作成され、クライアントが古いファイルハンドルを参照している。

エラーメッセージ

Stale file handle

解決方法

  • クライアント側でマウントを再実行する。
  • キャッシュをクリアして再マウント。

実行例

sudo umount -f /mnt/efs
sudo mount -t nfs4 -o nfsvers=4.1 <EFSホスト>:/ /mnt/efs

もし再マウント後も続く場合は、サーバー側で対象ディレクトリの構成を確認します。

原因⑤ DNSまたはVPC設定の不整合(EFS特有)

状況

EFS の DNS 解決ができない、または別VPCから接続している。

解決方法

  • 同一VPC 内でマウントする。
  • DNS解決を確認する(amazonaws.comドメインなど)。

実行例

nslookup fs-xxxxxxxx.efs.ap-northeast-1.amazonaws.com

確認ポイントまとめ

チェック項目原因解決方法(概要)
ポート 2049 の通信確認ネットワーク制限SG・FW設定を確認し許可
マウントオプションバージョンやIAM設定ミス-t efs -o tls など公式推奨構文で実行
permission denied権限設定UID/GIDや/etc/exportsを修正
stale file handle古いハンドル参照umountmount で再接続
DNS/VPC設定EFS解決不可同一VPC・正しいDNS設定を確認

まとめ

EFS / NFS のマウントトラブルは多くの場合、

  • ネットワークの疎通確認
  • マウントオプションの整合性
  • 権限設定の確認
  • キャッシュ再マウント
    の4ステップで解決できます。

これらを順に確認すれば、permission deniedstale file handle のエラーを再現・解決できるはずです。

目次