挂载命令在10.7.5上失败

时间:2013-04-13 11:20:36

标签: macos bash shell mount

我有一个安装smb共享的shell脚本。除了10.7.5之外,它适用于所有操作系统版本的所有mac 违规命令只是:

mount -t smbfs -o nobrowse //test:test@servername/sharename /my/mnt/point

当我在10.7.5 mac上尝试此命令时,它会因“管道损坏”或“身份验证失败”错误而失败。但是,它在运行10.7.4,10.6,10.8等的mac上运行良好。

任何人都可以在10.7.5上成功使用此命令吗? 有没有其他方法可以实现此目的,或者确切地解决为什么会发生此错误?我的想法已经用完了!

2 个答案:

答案 0 :(得分:1)

安装无法工作的原因有很多。其中一些原因包括:

  • 服务器和客户端之间的时间差异很大
  • 未在mac上指定工作组名称
  • 本地主机名使用非拉丁字符
  • mac和服务器之间的加密过于严格

解决时间;设定时间。

当您不使用工作组名称进行连接时,我经常看到管道/身份验证错误。连接字符串看起来通常比没有任何工作组的连接字符串更好:

//WORKGROUP;user:50000@192.168.2.1/Share

...假设50000是用户的密码,应允许连接。通常,你只需要在分号前面有一个字符串,它可以读取任何东西;它只需要在那里。

要解决本地主机名问题,请单击界面,选择advanced转到WINS选项卡,并确保该名称中没有任何外来字符。

如果加密过于严格,则需要修改nsmb.conf。我有一组看起来像这样的行:

[server1]
minauth=none

对于无法处理加密密码的古老BSD服务器。您可以在/etc/nsmb.conf~/Library/Preferences/nsmb.conf文件中添加此内容。

这可能无法解决您的问题,但可能有助于您继续尝试。

不幸的是,它说它适用于方框x而不是方框y并没有真正帮助,因为它们之间可能存在任意配置差异。

答案 1 :(得分:1)

由于对mark a comment as an answer的功能请求仍然被拒绝,我在此处复制上述解决方案。

感谢您的回复。问题有两个:首先,由于某种原因,你不能在10.7.5中以root身份运行此命令,其次你无法挂载/Volumes的outisde。奇怪的是,这似乎适用于所有其他操作系统修订版。我通过在/Volumes中安装我的共享然后创建指向所需挂载点的sym链接解决了这个问题:

mkdir -p /Volumes/share 
sudo -u localadminuser mount -t smbfs -o nobrowse //user:pass@server/share /Volumes/share 
ln -s /Volumes/share /location/that/I/prefer/to/mnt 

我希望这可以帮助别人。不知道为什么10.7.5会改变这个。 - BSUK