NFS 共享未通過 Mac OsX 上的 ssh 隧道連接,它適用於所有其他設備
我一直在尋找一段時間來嘗試找到解決方案,但我最終放棄了。我有一個執行 nfs 共享的 ubuntu 伺服器。我對其進行了設置,以便您必須使用 ssh 連接到它。這太棒了。問題是我可以毫無問題地從任何其他 linux 機器連接到它,但是這台 Mac 正在踢我的後端。這是我的連接方式:
製作 ssh 隧道: ssh -fNv -L 3049:localhost:2049 user@ssh.server.com -p 000
連接到共享: sudo mount_nfs -p 3049 localhost:/path/to/share /path/to/mount/share
我在 mac 上收到連接被拒絕錯誤,但是在我的 linux 機器上它連接得很好。
請幫忙?
伺服器上的 Rpcinfo:
$ rpcinfo -p 程序與原始埠服務
100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 52843 status 100024 1 tcp 33151 status 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 100227 3 tcp 2049 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 100227 3 udp 2049 100021 1 udp 58619 nlockmgr 100021 3 udp 58619 nlockmgr 100021 4 udp 58619 nlockmgr 100021 1 tcp 59210 nlockmgr 100021 3 tcp 59210 nlockmgr 100021 4 tcp 59210 nlockmgr 100005 1 udp 41289 mountd 100005 1 tcp 53372 mountd 100005 2 udp 45436 mountd 100005 2 tcp 52048 mountd 100005 3 udp 49309 mountd 100005 3 tcp 42610 mountd
所以,這就是在無數小時試圖弄清楚這件事後最終為我工作的東西:
我知道在 erver 端一切正常,因為我可以從其他 linux 電腦訪問共享,問題是在 MacOsx 上訪問它。所以,在環顧了一會後,我發現了Fuse for Osx和Sshfs包。我安裝了它並執行了這個命令:
sshfs -p 0000 user@ssh.myserver.com:/path/to/share/in/server /path/to/mount/on/computer -oauto_cache,reconnect
現在能夠連接並關閉它:)。
順便提一句!如果您將來閱讀此內容,請將 000 替換為您正在使用的埠,或者如果使用預設刪除“-p 000”並設置您的路徑,那麼您應該很高興。
NFS 正在使用一些 RPC 守護程序。根據標籤,我假設您使用的是 NFSv4。
首先,您確定您的 mac 使用的是 v4 嗎?您的 RPC 守護程序是否在您的 Mac 上啟動?在 Linux 上,您可以使用
rpcinfo -p
. 你的伺服器上至少應該有“portmapper”、“mountd”和“nfs”。您可能還有“nlockmgr”用於鎖定管理和其他一些。您可以查詢遠端主機上啟動了哪些 RPC 程序
rpcinfo -p $targethost
。請發佈在您的 Mac 上執行的 rpc 守護程序的列表。