尝试挂载 Windows NFS 共享时出现输入/输出错误

尝试挂载 Windows NFS 共享时出现输入/输出错误

我使用以下命令创建了 Windows Server 2012 共享:

PS C:\Windows\system32> nfsshare testshare2=C:\testshare2 -o anon=yes anonuid=0 anongid=0 rw=uuu.uuu.uuu.uuu
testshare2 was shared successfully

在哪里啊啊啊啊啊啊啊啊啊啊是我的 Ubuntu 系统的 IP。

接下来,我从 Ubuntu 机器上挂载了 Windows NFS 共享,如下所示:

sudo mount -t nfs xxx.xxx.xxx.xxx:/testshare2 /mnt/testshare2

在哪里xxx.xxx.xxx.xxx是 Windows Server 2012 机器的 IP。

挂载时没有显示任何错误,但是当我ls挂载目录时,出现以下内容:

ls: cannot open directory /mnt/testshare2/: Input/output error

我没有在 Ubuntu 的系统日志中显示任何错误。

以下是 Server 2012 中共享的属性: 在此处输入图片描述

编辑1:尝试从 RHEL7 计算机挂载 Server 2012 NFS 共享时,我收到相同的输入/输出错误。挂载工作正常,但无法 ls 目录或 touch 文件。

编辑2:在 Server 2012 中,NFS 日志显示已成功挂载到 Ubuntu 和 RHEL 机器。

答案1

这个问题已经解决了。服务器 2012

  1. 已打开Server Manager -> Shares

  2. 删除了现有的共享

  3. 删除了之前的共享文件夹

  4. 使用New Share Wizard 在此处输入图片描述

  5. 选择NFS Share - Quick后单击下一步。 在此处输入图片描述
  6. 选择要共享的新文件夹,Type a custom path然后单击“下一步”。 在此处输入图片描述
  7. 确认后Share name,点击下一步。 local pathremote paths在此处输入图片描述
  8. 在身份验证窗口中,我选择了No server authentication (AUTH_SYS),然后选择Enable unmapped user access by UID/GID 并确保Allow unmapped user acess by UID/GID选择了单选按钮。然后单击下一步。 在此处输入图片描述
  9. 在共享权限窗口中,我单击了Add

  10. Add Permissions弹出一个窗口。在这里,在 旁边Host,我输入了要挂载的远程 Linux 计算机的 IP,Language encoding在左侧输入ANSI,并设置Share permissionsRead/Write。然后点击Add底部的 ,关闭 Add Permissions窗口。
    在此处输入图片描述

  11. 在共享权限窗口中,我确认了上一步输入的设置,然后单击下一步。 在此处输入图片描述
  12. 在“指定权限”窗口中,我单击了“下一步”,没有做任何更改。 在此处输入图片描述
  13. 我在Confirm selections窗口中确认了设置然后单击了Create按钮。 在此处输入图片描述

然后从我的RHEL7系统我发布:

mount -t nfs sss.sss.sss.sss:/somedata /mnt/somedata/

sss.sss.sss.sssServer 2012系统的IP在哪里。

来自RHEL7机器,我确认了写入权限,方法是发出

date >> /mnt/somedata/date.txt

然后检查文件是否存在服务器 2012

答案2

从 Windows Server 2016 创建 NFS 共享时,上述说明很有帮助。一个重要部分是还要安装文件服务器资源管理器角色。在此之前,我只收到输入/输出错误,并且 Linux 报告挂载为 nfs 版本 3。之后,Linux 报告 nfs 版本 4.1,挂载成功。

图像

相关内容