我有許多(Windows)網路驅動器,我需要使用我的 Mac 連接到它們 - 技巧是在許多這些伺服器上我希望能夠直接連接到 c$ 共享。所以我最終得到了一個已安裝卷的列表,如下所示:
/卷/C$
/卷/C$-1
/卷/C$-3
/卷/c$-2
這在我的一些應用程式中造成了很大的混亂。
我的問題是:我可以為安裝點指定自訂名稱嗎?就像是:
/卷/伺服器1
/卷/伺服器2
/卷/伺服器3
我無法在谷歌上找到任何解決方案,但我懷疑這應該是可能的。我目前使用 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 的各種內建卷安裝系統使用;我認為添加手動安裝的捲不會造成麻煩,但存在很小的衝突風險。