首页 > 解决方案 > EFS 挂载失败并出现 mount.nfs4:服务器拒绝访问

问题描述

尝试挂载 EFS 文件系统。我唯一更改的是删除使用 EFS 组创建的默认 SG,并将其替换为我的 EC2 实例已经在其中的自定义 SG。

AWS 提供了挂载 NFS 共享的必要命令,它应该逐字运行。通常它确实如此。但有时你会得到这个:

mount.nfs4: access denied by server while mounting fs-xxxxxxxx.efs.us-west-2.amazonaws.com:/

可悲的是,故障排除文档在“采取的行动”标题下说:

如果您尝试使用 IAM 挂载文件系统...

...并且对于您不尝试使用 IAM 安装 FS 的操作建议绝对为零。

现在首先,我很确定我没有做错什么,因为我已经使用了数十次将 EFS (NFS) 共享安装到 EC2 实例的剧本,它们现在已经相当完善了。那么为什么有时会失败呢?

标签: ubuntupermissionsmountamazon-efs

解决方案


事实证明,AWS 并不总是像通常感觉的那样流畅,有时后端的事情会变得很糟糕。在这种情况下,替换 SG 可能实际上在 UI 中似乎可以工作,但在后端没有生效。我只是猜测。

我所做的只是删除现有的 EFS 并创建完全相同的 EFS。这次我唯一不同的是在创建 EFS 时设置了我的自定义 EFS SG,而不是在创建和 viola 之后替换它,我的剧本又可以工作了。

绝对没有我能想到的直观(或记录)原因,为什么从非默认 SG 开始应该与替换它有什么不同,当它完全相同的 SG 时。无论哪种情况,您都在设置 EFS 以使用您选择的 SG,并且 EFS 不反对。此外,我以前做过,没有任何问题。因此,我将其归结为 EFS/SG 后端搞砸了,浪费了大量时间进行故障排除。

总之,如果一个的EFS 共享mount.nfs4: access denied by server在尝试标准挂载时给您错误(并且您知道您正在正确地执行其他所有操作) - 只需将其删除并重新创建它即可。不一定要假设您做错了什么,并且 AWS 服务不会时不时地搞砸。


推荐阅读