无法在 Windows 10 上挂载 CentOS NFS 共享 - “网络错误 - 53”

rst*_*2cv 5 nfs rpc windows-10 centos8

我有一个 CentOS 8 虚拟机 ( 192.168.10.203) 正在运行nfs-server,我正在尝试在我的 Windows 10 Pro x86_64 机器上挂载共享 ( 192.168.10.10) 我已经安装了“NFS 服务”Windows 功能),但是当我运行时mount \\<nfs_server_IP>\data N:,我不断收到这个错误:

网络错误 - 53

输入“NET HELPMSG 53”了解更多信息。

网络错误 53 的消息是“找不到网络路径”,但我不确定这意味着什么。

这是我/etc/exports在 CentOS 机器上的样子:

/data 192.168.10.0/24(rw,sync,root_squash,insecure,anonuid=0,anongid=0)
Run Code Online (Sandbox Code Playgroud)

我也尝试过最低限度的选项:

/data 192.168.10.0/24(rw,sync)
Run Code Online (Sandbox Code Playgroud)

CentOS 和 Windows 10 机器都可以互相 ping 通。

我可以通过端口 2049 连接到 NFS 服务器

rpcinfo -p localhost在 NFS 机器上运行的输出:

$ rpcinfo -p localhost
       program vers proto   port  service
        100000    4   tcp    111  portmapper
        100000    3   tcp    111  portmapper
        100000    2   tcp    111  portmapper
        100000    4   udp    111  portmapper
        100000    3   udp    111  portmapper
        100000    2   udp    111  portmapper
        100024    1   udp  39181  status
        100024    1   tcp  38357  status
        100005    1   udp  20048  mountd
        100005    1   tcp  20048  mountd  
        100005    2   udp  20048  mountd
        100005    2   tcp  20048  mountd
        100005    3   udp  20048  mountd
        100005    3   tcp  20048  mountd
        100003    3   tcp   2049  nfs
        100003    4   tcp   2049  nfs
        100227    3   tcp   2049  nfs_acl
        100021    1   udp  53482  nlockmgr
        100021    3   udp  53482  nlockmgr
        100021    4   udp  53482  nlockmgr
        100021    1   tcp  39197  nlockmgr
        100021    3   tcp  39197  nlockmgr
        100021    4   tcp  39197  nlockmgr
Run Code Online (Sandbox Code Playgroud)

尝试在 Windows Server 2008 客户端中安装 NFS 共享时insecure,我在/etc/exports每个“网络错误 - 53”中都有选项。没用。

我尝试禁用两台主机上的防火墙但没有结果(systemctl disable firewalld && iptables --flush在 CentOS 机器上,并禁用 Windows Defender 防火墙(公共和专用网络防火墙)。

有任何想法吗?

Ove*_*ind 6

在 Linux 部分- 确保您的 NFS 服务器配置正确:

  • 应安装 nfs-utils 和 nfs-utils-lib

  • 应启用 rpcbind、nfs-server、nfs-lock、nfs-idmap

  • 应启动 rpcbind、nfs-server、nfs-lock、nfs-idmap

  • 选择要共享的目录

  • 确保您的用户可以访问其目录中的所有内容

  • 获取您计划使用的用户的UIDGID

  • 获取 Windows 10 NFS 客户端的 IP 地址

  • 编辑导出文件 (etc/exports) 并添加您将使用的用户:/home/user 192.168.1.2(rw,sync,root_squash,all_squash,anonuid=1001,anongid=1001)- 注意:ID 是之前获得的 ID

  • 重新启动服务 systemctl restart nfs-server

  • 获得正确的端口 rpcinfo -p

  • 将它们添加到防火墙

在窗户部分:

  • 确保您安装了 NFS 客户端

  • 您现在需要在服务器和客户端上匹配之前提取的 UID 和 GID(在 linux 部分示例中为 1001)

  • 注册到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default

  • 您需要通过在 Default 键内右键单击来创建两个新的 DWORD(32 位)条目。它们应该被命名为“AnonymousGid”和“AnonymousUid”。它们都应该有一个与您之前获得的用户 GID 和 UID 相匹配的十进制值(示例中为 1001)

  • 使用以下命令在 Windows 10 客户端重新启动 NFS 服务:

    nfsadmin 客户端 HOSTNAME 配置 casesensitive=yes

    nfsadmin 客户端 HOSTNAME 停止

    nfsadmin 客户端 HOSTNAME 启动

  • 最后,让你的坐骑: mount -o anon \\192.168.1.3\home\storage\ X:

您应该会收到成功安装的消息。


use*_*517 0

有任何想法吗?

SELinux 完成它的工作是我的想法。

编辑;

-我从个人经验中知道,在处理 RHEL/Centos 系统时,当出现问题时,检查 SELinux 总是一件好事。检查 /var/log/audit 是否有 AVC 被拒绝

可以尝试-setenforce 0。