![OSX 上 SMB 共享的自定义名称](https://linux22.com/image/1413973/OSX%20%E4%B8%8A%20SMB%20%E5%85%B1%E4%BA%AB%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E5%90%8D%E7%A7%B0.png)
我有许多 (Windows) 网络驱动器需要使用我的 Mac 连接 - 诀窍是,在许多这些服务器上,我希望能够直接连接到 c$ 共享。因此,我最终得到了一个已安装卷的列表,如下所示:
/卷/C$
/卷/C$-1
/卷/C$-3
/卷/c$-2
这导致我的一些应用程序出现很大混乱。
我的问题是:我可以为挂载点指定自定义名称吗?例如:
/卷/服务器 1
/卷/服务器 2
/卷/服务器 3
我还没能用 Google 找到任何解决方案,但我觉得应该可以。我目前使用 Automator 脚本进行连接,但我也不怕用 shell 脚本来连接。
...或者我的想法是错误的?
感谢您的考虑...
答案1
你可以在 shell 脚本中执行此操作,例如:
#!/bin/bash
mountpoint='/Volumes/server1'
serverpath='server1.wibble.com/C$'
username='gabeuscorpus'
if [[ -e "$mountpoint" ]]; then
echo "Error: the path $mountpoint is already in use' >&2
exit 1
fi
mkdir "$mountpoint" || {
echo "Error creating mount point" >&2
exit 1
}
mount -t smbfs "//$username@$serverpath" "$mountpoint" || {
echo "Error mounting smb://$mountpoint" >&2
rmdir "$mountpoint"
exit 1
}
此方法有一些注意事项:首先,虽然这会将服务器卷安装在路径 /Volumes/server1 下,但它仍会在 Finder 中显示为 C$。通过路径访问文件的程序不会感到困惑,但您会感到困惑。
其次,这将提示在终端中输入服务器密码。可以将密码包含在“//$username:$password@$serverpath”格式中,但这样任何列出列表的人都可以看到该密码ps
。不幸的是,它似乎不使用存储在钥匙串中的密码。
最后,/Volumes 目录通常由 OS X 的各种内置卷安装系统使用;我认为添加手动安装的卷不会造成麻烦,但存在发生冲突的小风险。