
Ich habe die Installation Mosh
auf (1) einem Mac OS X 10.9.5 Rechner, (2) einer Debian 8 VM und (3) alsEntware-ngPaket auf einem Router, der ein eingebettetes Linux betreibt. Mosh-Verbindung von Mac (1) zu (2) Debian istOK. Mosh-Verbindung von (1) Mac zu (3) Linux Embedded Routerschlägt fehlmit der Nachricht:
/usr/local/bin/mosh: Startnachricht des Mosh-Servers nicht gefunden.
Umfeld:
- Die Mosh-Version auf dem Mac ist 1.2.5.
- Alle Maschinen sind für die SSH-Anmeldung mit Zertifikaten konfiguriert.
- Die Mac OS X-Shell ist zsh.
/usr/local/bin
befindet sich im $PATH von Mac OS X- Die Mac Terminal-Anwendung istiTerm 2.1.4
- Debian 8 läuft in einem 10.x pvm_nat LAN: Parallels-virtuelle Maschine mit gemeinsam genutztem Netzwerk, die Parallels auf demselben Mac ausführt.
- Zum Herstellen einer Verbindung mit Debian verwendeter Befehl
$ mosh [email protected]
- Der Router rt-n56u läuft unter IP 192.168.x über ein kabelgebundenes LAN
- Der Befehl zum Verbinden vom Mac mit dem Router lautet:
$ mosh [email protected]
- Der Linux-Router läuftPadavan Firmware RT-N56U_3.4.3.9-099_base.trx
Regression
- Ich habe versucht, die Little Snitch-Firewall auf dem Mac zu deaktivieren, aber trotzdem keine Verbesserung:
/usr/local/bin/mosh: Did not find mosh server startup message.
- Ich habe auch versucht, eine Debugsitzung mit folgendem Befehl zu starten:
$ 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
Ich habe auf dem Mac auskommentiert :$ cat /etc/ssh_config | grep SendEnv
# SendEnv LANG LC_*
- Ich habe versucht, die Firewall auf dem Router zu deaktivieren, was keinen Unterschied macht:
/usr/local/bin/mosh: Did not find mosh server startup message.
Das rt-n56u-Protokoll zeigt Folgendes an:
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
Auf dem 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
Was kann getan werden, um die mosh
Verbindung von diesem Mac zum Router rt-n56u zu reparieren?
Antwort1
Überprüfen Sie, wo die mosh-server
Binärdatei im eingebetteten Linux installiert ist, und übergeben Sie diesen Pfad an die server
Option in Ihrem mosh
Befehl.
Angenommen, die mosh-server
Binärdatei ist im /usr/bin/
Verzeichnis im eingebetteten Linux installiert, dann führen Sie mosh
Folgendes aus:
$ mosh --server=/usr/bin/mosh-server [email protected]
Antwort2
Ich hoffe, das hilft. Dieses Problem trat auch bei mir mit der gleichen Meldung auf. Ich bin zwar kein Experte, habe es aber folgendermaßen gelöst:
Analog zu Deiner Konfiguration (3) und (1) läuft auf meinem Server Ubuntu Server 18.04 und mein Client ist ein iMac mit Mojave.
Führen Sie auf dem Server Folgendes aus:
$ echo $LANG
en_US.UTF-8
Dann suche den Mosh-Server-Pfad, er war auf
/usr/bin/mosh-server
Ändern Sie auf dem Mac die letzte Zeile so,
/etc/ssh/ssh_config
dassSendEnv LANG en_US.UTF-8
sie der vorherigen Serverausgabe entspricht.Der Befehl, den ich für Mosh verwende, sieht wie folgt aus und gibt den Mosh-Serverpfad und den SSH-Port an:
$ mosh --server=/usr/bin/mosh-server [email protected] --ssh="ssh -p XXXX"
Antwort3
Nach dem ScheinDebug-Wiki-Seite, sollten Sie als Nächstes Folgendes tun:
ssh -S none -o ProxyCommand='mosh --fake-proxy -- %h %p' -n -tt [email protected] -- 'mosh-server new'
und sehen Sie, was es sagt.
Antwort4
Diese Frage wurde nun schon vor 7 Jahren gestellt und ich hoffe, dass alle 9.000 Besucher seitdem inzwischen einen Weg gefunden haben, nicht jedes Mal den —Server aufrufen zu müssen.
Das ist meins:
mbj@m2 ~ % echo PATH=/opt/homebrew/bin:\$PATH >> ~/.zshenv