
我確實安裝Mosh
在 (1) Mac OS X 10.9.5 電腦、(2) Debian 8 VM 和 (3) 上工程軟體運行嵌入式 Linux 的路由器上的軟體包。從 Mac (1) 到 (2) Debian 的 Mosh 連線是好的。從 (1) Mac 到 (3) Linux 嵌入式路由器的 Mosh 連接失敗帶有訊息:
/usr/local/bin/mosh:沒有找到mosh伺服器啟動訊息。
環境:
- Mac 上的 Mosh 版本是 1.2.5。
- 所有機器都配置為使用憑證進行 ssh 登入。
- Mac OS X shell 是 zsh。
/usr/local/bin
位於 Mac OS X 的 $PATH 中- Mac 終端應用程式是i學期2.1.4
- Debian 8 在 10.x pvm_nat LAN 中運作:使用共用網路並行虛擬機,Parallels 在同一台 Mac 上運作。
- 用於連接 Debian 的命令
$ mosh [email protected]
- 路由器 rt-n56u 使用有線 LAN 在 IP 192.168.x 上運行
- 從 Mac 連接到路由器的命令是:
$ mosh [email protected]
- Linux 路由器正在運行Padavan韌體 RT-N56U_3.4.3.9-099_base.trx
回歸
- 我確實嘗試在 Mac 上停用 Little Snitch 防火牆,但沒有任何改善:
/usr/local/bin/mosh: Did not find mosh server startup message.
- 我也嘗試使用以下命令啟動偵錯會話:
$ ssh -S none -o ProxyCommand='mosh --fake-proxy -- %h %p' -n -tt [email protected] -- 'mosh-server new'
MOSH IP 192.168.x.x
Connection to 192.168.x.x closed.
SendEnv
我在Mac上註解掉了:$ cat /etc/ssh_config | grep SendEnv
# SendEnv LANG LC_*
- 我嘗試停用路由器上的防火牆,這沒有任何區別:
/usr/local/bin/mosh: Did not find mosh server startup message.
rt-n56u 日誌顯示以下內容:
May 3 00:42:15 dropbear[819]: Child connection from 192.168.x.y:50824
May 3 00:42:17 dropbear[819]: Pubkey auth succeeded for 'username' with key md5 2c:...:94 from 192.168.x.y:50824
May 3 00:42:18 dropbear[820]: ioctl(TIOCSCTTY): Input/output error
May 3 00:42:18 dropbear[820]: /dev/pts/0: No such file or directory
May 3 00:42:18 dropbear[820]: open /dev/tty failed - could not set controlling tty: No such device or address
May 3 00:42:18 dropbear[819]: Exit (username): Disconnect received
在 rt-n56u 上:
# ls -l /dev/pts/*
crw--w--w- 1 username root 136, 0 May 3 00:45 /dev/pts/0
# ls -l /dev/tty
crw-rw---- 1 username root 5, 0 Jan 1 2015 /dev/tty
如何修復mosh
此 Mac 與 rt-n56u 路由器的連線?
答案1
檢查mosh-server
二進位檔案在嵌入式 Linux 中的安裝位置,並將該路徑傳遞給命令server
中的選項mosh
。
假設mosh-server
二進位檔案安裝/usr/bin/
在嵌入式 Linux 的目錄中,然後執行mosh
如下:
$ mosh --server=/usr/bin/mosh-server [email protected]
答案2
我希望這有幫助,這個問題也發生在我身上,並發出同樣的消息,我不是專家,但我這樣解決了:
類似於您的配置 (3) 和 (1),我的伺服器運行的是 Ubuntu Server 18.04,我的客戶端是執行 Mojave 的 iMac。
在伺服器上運行:
$ echo $LANG
en_US.UTF-8
然後搜尋mosh-server路徑,就上了
/usr/bin/mosh-server
在 Mac 上,將最後一行更改
/etc/ssh/ssh_config
為SendEnv LANG en_US.UTF-8
與先前的伺服器輸出類似。我用於 mosh 的命令如下所示,指示 mosh 伺服器路徑和 ssh 連接埠:
$ mosh --server=/usr/bin/mosh-server [email protected] --ssh="ssh -p XXXX"
答案3
根據模擬調試維基頁面,接下來你該做的是:
ssh -S none -o ProxyCommand='mosh --fake-proxy -- %h %p' -n -tt [email protected] -- 'mosh-server new'
看看它說了什麼。
答案4
這個問題是 7 年前提出的,我希望從那時起所有 9k 訪客現在都找到了一種方法來避免每次都進入伺服器。
這是我的:
mbj@m2 ~ % echo PATH=/opt/homebrew/bin:\$PATH >> ~/.zshenv