SMB 共享连接错误:“发生系统错误 53。未找到网络路径。” 但仅在特定的Win10机器上,其他机器可以正常工作

Kid*_*son 4 networking samba smb2 smbclient windows-10

我的 RPie3 上有一个 SMB“samba”共享设置。我的所有其他机器都可以正常连接到它,但我的主 Win10 机器却不能。我已经排除了 DNS 和 SMB 版本(正在使用 SMB2),所以我很困惑。

更新:这只是一个复古的游戏系统。我根本希望或不需要它是安全的,我只是希望它能够工作。

这是我在工作机器上通过 CMD.exe 测试得到的结果:

C:\>ping RetroPie -4

Pinging RetroPie.myDomain.local [192.168.3.56] with 32 bytes of data:
Reply from 192.168.3.56: bytes=32 time=6ms TTL=64
Reply from 192.168.3.56: bytes=32 time=10ms TTL=64
Reply from 192.168.3.56: bytes=32 time=8ms TTL=64
Reply from 192.168.3.56: bytes=32 time=5ms TTL=64

Ping statistics for 192.168.3.56:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 5ms, Maximum = 10ms, Average = 7ms

C:\>net view \\RetroPie
Shared resources at \\RetroPie

Samba 4.9.5-Debian

Share name     Type  Used as  Comment

-------------------------------------------------------------------------------
configs        Disk           configs
homes          Disk           Home Directories
roms           Disk           roms
splashscreens  Disk           splashscreens
The command completed successfully.
Run Code Online (Sandbox Code Playgroud)

...以下是在我的非工作 Win10 机器上进行的相同测试:

PS C:\> ping -4 RetroPie                                                                                             
Pinging RetroPie.MyDomain.local [192.168.3.56] with 32 bytes of data:
Reply from 192.168.3.56: bytes=32 time=5ms TTL=64
Reply from 192.168.3.56: bytes=32 time=7ms TTL=64
Reply from 192.168.3.56: bytes=32 time=5ms TTL=64
Reply from 192.168.3.56: bytes=32 time=5ms TTL=64

Ping statistics for 192.168.3.56:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 5ms, Maximum = 7ms, Average = 5ms
PS C:\> net view \\RetroPie
System error 53 has occurred.

The network path was not found.

PS C:\> net view \\192.168.3.56
System error 53 has occurred.

The network path was not found.
Run Code Online (Sandbox Code Playgroud)

编辑1:我已经排除的事情:

  1. Windows防火墙
  2. Windows Defender 防病毒软件
  3. SMB1正在使用中(在我的Win10机器上暂时启用它)

EDIT2 - 这是我的smb.conf文件(有 2 个,不清楚需要哪一个,所以我将两个文件都包含在内 - 请注意,#为了简洁起见,所有以注释开头的行都已被删除):

pi@retropie:/ $ 猫 . /etc/samba/smb.conf

[global]
   workgroup = drewz.local
   client max protocol = SMB3
   client min protocol = SMB2
   server max protocol = SMB2
;   interfaces = 127.0.0.0/8 eth0
;   bind interfaces only = yes
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
;   logon path = \\%N\profiles\%U
;   logon drive = H:
;   logon script = logon.cmd
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u
; add group script = /usr/sbin/addgroup --force-badname %g
;   include = /home/samba/etc/smb.conf.%m
;   idmap config * :              backend = tdb
;   idmap config * :              range   = 3000-7999
;   idmap config YOURDOMAINHERE : backend = tdb
;   idmap config YOURDOMAINHERE : range   = 100000-999999
;   template shell = /bin/bash
   usershare allow guests = yes
[homes]
   comment = Home Directories
   browseable = yes
   read only = yes
   create mask = 0700
   directory mask = 0700
   valid users = %S
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700
;   write list = root, @lpadmin
[roms]
comment = roms
path = "/home/pi/RetroPie/roms"
browsable = yes
writeable = yes
guest ok = yes
read only = no
create mask = 0644
directory mask = 0755
force user = pi
[configs]
comment = configs
path = "/opt/retropie/configs"
writeable = yes
guest ok = yes
create mask = 0644
directory mask = 0755
force user = pi
[splashscreens]
comment = splashscreens
path = "/home/pi/RetroPie/splashscreens"
writeable = yes
guest ok = yes
create mask = 0644
directory mask = 0755
force user = pi
Run Code Online (Sandbox Code Playgroud)

pi@retropie:/ $ cat /usr/share/samba/smb.conf

[global]
   workgroup = drewz.local
   client max protocol = SMB3
   client min protocol = SMB2
   server max protocol = SMB2
;   interfaces = 127.0.0.0/8 eth0
;   bind interfaces only = yes
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
;   logon path = \\%N\profiles\%U
;   logon drive = H:
;   logon script = logon.cmd
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u
; add group script = /usr/sbin/addgroup --force-badname %g
;   include = /home/samba/etc/smb.conf.%m
;   idmap config * :              backend = tdb
;   idmap config * :              range   = 3000-7999
;   idmap config YOURDOMAINHERE : backend = tdb
;   idmap config YOURDOMAINHERE : range   = 100000-999999
;   template shell = /bin/bash
   usershare allow guests = yes
[homes]
   comment = Home Directories
   browseable = no
   read only = yes
   create mask = 0700
   directory mask = 0700
   valid users = %S
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700
[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
;   write list = root, @lpadmin
Run Code Online (Sandbox Code Playgroud)

har*_*ymc 5

该问题的解决方案基于 Can not connect to share (system error 1272)帖子的答案,尽管只需要该答案的一部分。

以下几行需要更新smb.conf

   [global]
   client min protocol = SMB3
   client max protocol = SMB3
   restrict anonymous = 2
   encrypt passwords = true
Run Code Online (Sandbox Code Playgroud)

答案建议删除 行map to guest = bad user,尽管对于没有此行的海报来说,网络共享无法访问。