MacOS Ventura 的新 SMB 文件共享 Bug
其实在 SMB 连接上翻车已经是苹果的祖传艺能了。2017年我也发现过类似的Bug。
这几天又发现了一个 SMB 文件共享连接故障的 Bug,“连接到服务器“192.168.1.10”时出现问题。请检查服务器名称或IP地址,然后再试一次。如果问题持续发生,请联系系统管理员”。
原本可以正常使用的 SMB(Samba)文件共享连接,系统升级后,突然就不工作了。造成这次 Bug 原因也是非常奇葩,是先前能够正常挂载的 SMB 驱动器使用了「自定义图标」造成的。
修复方法也很简单(当然为了解决这个问题我也花了几天时间):
先重启已经无法连接的 Samba 服务器,然后你会发现可以重启后是能够正常挂载一次的(锁定系统或者隔一段时间后再连接就又会出现故障)。然后在 MacOS 中,在桌面上找到已经挂载的驱动器图标,选中后按 “Command+I”打开属性,用鼠标单击顶部的自定义图标,然后再按下 “Command+X” 把自定义图标剪掉,之后驱动器图标会恢复为系统默认样式,最后重新系统,故障应该可以顺利解决。
如果重启后仍然无法连接,可以再次尝试先重启已经无法连接的 Samba 服务器并再次挂载,并在 MacOS 中使用命令行,彻底清除之前已经挂载的驱动器的扩展属性:
xattr -c /Volumes/你的共享\ 名称
提示:如果驱动器名称中有空格,请在空格前键入“\”,如上所示。问题即可解决。
这个问题在旧版本的 MacOS Monterey 下不会出现的,只会发生在 MacOS Ventura 13.2 及 13.3下,另外同样能对iOS 16.3造成影响。目前最新的 13.4 Beta 1 尚未修复这个错误。
这个问题在AppleInsider论坛 \ Reddit 上也有过大量讨论。
如果上述操作对你仍然无效,则可以试图切换 MacOS 的 SMB版本:
sudo sh -c "echo '[default]' >> /etc/nsmb.conf; echo 'protocol_vers_map=6' >> /etc/nsmb.conf"
7:这将启用 SMB 1/2/3(默认)
6:这将启用 SMB 2/3
4:这将仅启用 SMB 3
2:这将仅启用 SMB 2
1:这将仅启用 SMB 1启用
此处的 =6 代表设置为仅 SMB v2/3(低版本的 Mac 系统曾经是使用 “smb_neg=smb2_only”,现在失效了)。这个命令会在 /etc 目录中添加一个 nsmb.conf 文件,系统检测到这个文件后就会默认按照你设置的值对外连接SMB。修改后需要重启才能生效。(如果需要回到默认连接,只需要 rm /etc/nsmb.conf
即可)。