OSX 连接到 Windows Server 2012 R2 (SMB) 进行文件共享无法搜索

OSX 连接到 Windows Server 2012 R2 (SMB) 进行文件共享无法搜索

当 OSX 10.10 用户通过 SMB 连接到远程服务器 (SRV02) 文件共享时,他们无法搜索文件共享... 即使搜索,它也会挂起(死机)。OSX 上有几个用户需要能够搜索服务器上的文件。Windows 8 用户似乎不受影响,因为搜索结果按预期显示(尽管有时速度很慢)。

我的问题是:SRV02 上是否存在服务/文件索引服务,它只索引文件并向远程计算机(Mac 和 PC)提供目录以供它们尝试搜索服务器时使用?

答案1

您必须禁用 Windows 文件共享上的基于访问的枚举,并强制 Mac 客户端使用 SMB1。

另外,不要将完全控制权交给 CREATOR OWNER:取消选中“完全控制”、“更改权限”和“取得所有权”。除非您取消选中这些权限,否则 mac ACL 会长期困扰您。

为了在 Mac 客户端上强制执行 SMB1:

  1. 创建全局配置:

    $ sudo -s
    $ sudo echo "[default]" >> /etc/nsmb.conf
    $ sudo echo "smb_neg=smb1_only" >> /etc/nsmb.conf
    
  2. 重新启动 OS X 客户端

  3. 创建新的 AD 测试用户
  4. 登录并检查问题是否仍然存在

这在 10.9 和 10.10 中有效。

答案2

看起来这个产品:http://www.acronis.com/en-us/mobility/mac-windows-compatibility/提供 AFP 访问,允许客户端搜索文件并检索近乎即时的结果。它还提供比 SMB 更快的性能,并附带许多其他选项,例如文件命名策略和强制执行(以确保 Windows 客户端兼容性)。到目前为止,对于大多数管理员来说,唯一的潜在缺点是成本。

答案3

https://discussions.apple.com/message/12067045#12067045

我建议你采取以下步骤:

禁用 IPv6 支持:

  • 系统偏好设置 > 网络 > 高级 > TCP/IP 选项卡 > 将配置 IPv6 更改为仅链接本地

  • 检查此解决方案是否有帮助

通过终端调整内核参数

  • A) 立即应用- 系统运行时会应用更改,但重启后自定义参数就会消失
sudo sysctl -w net.inet.tcp.rfc1323=1
sudo sysctl -w net.inet.tcp.delayed_ack=0
sudo sysctl -w net.inet.tcp.sendspace=250000
sudo sysctl -w net.inet.tcp.recvspace=250000
sudo sysctl -w net.inet.tcp.mssdflt=1440
  • 检查此解决方案是否有帮助

  • B)坚持不懈- 重新启动 OS X 后,参数将持续应用(直到您手动删除 /etc/sysctl 并再次重新启动)

sudo bash -c "echo 'net.inet.tcp.rfc1323=1' >> /etc/sysctl.conf"
sudo bash -c "echo 'net.inet.tcp.delayed_ack=0' >> /etc/sysctl.conf"
sudo bash -c "echo 'net.inet.tcp.sendspace=250000' >> /etc/sysctl.conf"
sudo bash -c "echo 'net.inet.tcp.recvspace=250000' >> /etc/sysctl.conf"
sudo bash -c "echo 'net.inet.tcp.mssdflt=1440' >> /etc/sysctl.conf"

  • 检查此解决方案是否有帮助

  • C)如果没有帮助,尝试关闭 Windows Scaling rfc1323

  • 保留之前的值,但禁用 rfc

sudo sysctl -w net.inet.tcp.rfc1323=0

  • 检查此解决方案是否有帮助

最后一次尝试——启用互联网共享:

我希望这些步骤能够对你有所帮助。

麦可

相关内容