我在 Windows Server 2008 中设置了共享,并赋予我的域帐户完全权限。
大约一周的时间里,该共享完全可以访问,但今天我无法再从 Windows XP 计算机访问它。我尝试过:
- 刷新我的 DNS 并导航到 //machinename/sharename - 导致无法访问消息
- 导航到//机器 ip 地址/共享名 - 导致无法访问消息
- Ping 机器 IP 地址 - 成功
- Ping 机器名称 - 成功
此后不久,我尝试通过 Windows 7 计算机访问共享,一切顺利!请注意,我使用相同的域帐户登录了 WinXP 和 Win7 计算机。
因此,我的问题是,什么原因导致 Windows Server 2008 机箱能够成功与 Win7 共享,但不能与 WinXP 共享?
我知道微软在 WinXP 之后重写了网络堆栈,所以我想 WinXP 调用这些共享的方式可能与 Win7 不同。也许只是为 WinXP 提供旧版访问的服务(或其他)崩溃了?
重新启动解决了 WinXP 的问题,但是如果可能的话我真的很想避免这种情况。
更新 我还没有找到解决这个问题的真正办法。目前,重启是我唯一的解决办法。幸运的是,我已经有几周没有遇到这个问题了。
答案1
我们在装有旧版 Symantec 防病毒产品的机器上运行 Server 2008 网络共享时也发现了同样的问题。如果您有 SAV 或 SEP 11,请确保机器运行的是最新维护版本。
答案2
因此,出于故障排除目的(主要是在混合操作系统的环境中),您可能需要考虑禁用 SMB 2.0。您需要在“客户端”和“服务器”操作系统上执行此操作。
要禁用作为“客户端”系统的 Windows Vista 或 Windows Server 2008 系统的 SMB 2.0,请运行以下命令:
sc config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc config mrxsmb20 start= disabled
请注意,“=”符号后面有一个多余的“ ”(空格)。
要为作为“客户端”系统的 Windows Vista 或 Windows Server 2008 系统启用 SMB 2.0,请运行以下命令:
sc config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc config mrxsmb20 start= auto
再次注意,“=”符号后面有一个多余的“ ”(空格)。
为了在服务器端计算机上禁用 SMB 2.0,请按照以下步骤操作:
- 在基于 Windows Server 2008 的计算机上运行“regedit”。
- 展开并定位子树,如下所示。HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters
- 添加一个新的 REG_DWORD 键,名称为“Smb2”(不带引号)
值名称:Smb2 值类型: REG_DWORD 0 = 禁用 1 = 已启用
- 将值设置为 0 以禁用 SMB 2.0,或将其设置为 1 以重新启用 SMB 2.0。
- 重新启动服务器。