I’ve only used Mosh: the mobile shell for a couple of weeks, but I am definitely a convert! However, I couldn’t get mosh to connect to one of my servers (an OpenVZ instance).
The error manifested itself as the client trying to connect to the server but not getting any response:
mosh: Connecting... [To quit: Ctrl-^ .]
Today I decided to debug the issue. As the client actually was trying to connect, I tried to simply start the server:
$ mosh-server new MOSH CONNECT 60001 rSbp4ENDdzd/TKBOrrEeVg mosh-server (mosh 1.2.2) Copyright 2012 Keith Winstein License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. [mosh-server detached, pid = 32582]
But when I checked the process list, it wasn’t running anymore:
$ pgrep mosh-server $
Time to add some verbose output:
$ mosh-server new -v MOSH CONNECT 60001 hQ5ab1JjgUytXRZmy5ti6A mosh-server (mosh 1.2.2) Copyright 2012 Keith Winstein License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. [mosh-server detached, pid = 14208] forkpty: No such file or directory
This must be important: forkpty: No such file or directory, but what does it mean?
Some googling showed that it meant that /dev/pts was not mounted on my system, and it was indeed not mounted:
$ mount /dev/simfs on / type reiserfs (rw,usrquota,grpquota)
(Yes, I’ve also wondered why my host is running ReiserFS.)
So I checked my /etc/fsab:
$ cat /etc/fstab proc /proc proc defaults 0 0 none /dev/pts devpts rw 0 0
It’s there, but still not mounted? Oh well, easy fix:
sudo mount /dev/pts
After that fix, I could successfully connect to my server with mosh!
Thank you so much! Encountered the same problem, somehow mosh-server only started on root… a verbose check turned out the same problem you described and had to mount /dev/pts