2012-12-13 65 views
5

我在裝有Ubuntu Server虛擬機的Mac OSX機器上執行我的開發工作,我主要通過SSH從終端進行管理。 我試圖找到一種方法來編輯服務器上使用Mac上的崇高文本而不是終端上的nano或vim文件。 我遵循本優秀指南中包含的說明,「Using Textmate 2s rmate with Sublime Text 2」。通過SSH通過Sublime Text打開文件到虛擬機,錯誤

  • 我已經在Sublime Text中安裝了rsub。
  • 我已在我的Ubuntu服務器上安裝了rmate。
  • 我編輯了我的〜/ .ssh/config文件。
  • 我已經添加端口52698到服務器上的iptables。

當我SSH到我的服務器和運行

rmate .profile 

我得到的錯誤

connect_to localhost port 52698: failed. 

This previous question指的是一個類似的錯誤,但它似乎與具有多於一個SSH連接打開,我不認爲這是我的情況。但是我怎麼能測試呢?

我想知道這是否可能與我的開發服務器是一個虛擬機有一點神祕的互聯網設置 - 使用三個不同的適配器連接到主機的以太網和WiFi連接有關。通過SSH反向隧道需要對此設置進行不同的調整?

或者,對資源或引用的任何其他建議,以獲得此設置?

回答

3
  1. 發出以下命令來檢查端口是打開虛擬機:

    遠程登錄本地主機52698

如果當時沒有打開你需要打開它。

+3

謝謝!我跑了,並得到 連接到本地主機。 轉義字符是'^]'。connect_to localhost端口52698:失敗。 由外國主機關閉連接。 然後我跑了netstat -an | grep的 「聽」,得到了,除其他事項外: TCP 0 0 127.0.0.1:52698 0.0.0.0:* LISTEN TCP6 0 0 :: 1:52698 ::: * LISTEN 這是否表明該端口打開? – Ila

+2

你需要修復它然後由於端口沒有打開,這就是爲什麼崇高的文本是失敗的 – Satya

+2

Noob提示,我發現有用的:記得要在本地機器上運行Sublime。然後您可以運行該命令並查看它是否連接。 – Magne

1

在VirtualBox>設置>網絡>適配器2(NAT適配器)>高級,我添加了端口轉發規則,hostmachine:52698添加到guestmachine:52698。這似乎解決了它。

+2

對於我自己和其他任何遇到此問題的人來說,我的設置(運行SublimeText,安裝了rmate的Ubuntu虛擬機都運行在Mac OSX桌面上),我得到了同樣的錯誤:「connect_to localhost port 52698:failed」。如果SublimeText尚未在主機上打開。所以,第一行調查:SublimeText是否開放? – Ila

1

如果您想完全避免端口轉發,您可以嘗試一直使用我稱之爲'xeno'(https://xeno.io)的東西。它與rmate/rsub非常相似,只是它不使用反向端口轉發來啓用同步。相反,它使用Git和SSH混搭來啓用其傳輸和同步。與rmate/rsub相比,它具有許多優點 - 特別是您可以編輯整個文件夾層次結構。它對連接中途退出也是完全健壯的,所以你甚至可以脫機工作,並且在你重新上線後,編輯你在本地自動推送到遠程的更改。

它也是免費的,開源:),我真的很喜歡一些反饋。

1

我不得不殺了所有現有的SSH會話與

pkill -o -u YOURUSERNAME sshd 

,一切又恢復了。