up vote 2 down vote favorite
share [g+] share [fb]

socat - exec:'bash -li',pty,stderr,ctty -> bash: no job control in this shell

What options should I use to get fully fledged shell as I get with ssh/sshd?

I want to be able to connect the shell to everything socat can handle (SOCKS 5, UDP, OpenSSL), but also to have a nice shell which correctly interprets all keys, various Ctrl+C/Ctrl+Z, tab completion, up/down keys (with remote history).

Update: Found "setsid" socat option. It fixes "no job control". Now trying to fix Ctrl+D.

Update 2:

socat file:`tty`,raw,echo=0 exec:'bash -li',pty,stderr,setsid,sigint,sane
. Not it handles Ctrl+D/Ctrl+Z/Ctrl+C well, I can start Vim inside it, remote history is OK.

link|improve this question

63% accept rate
Looks like all requirements are met now. Now to mark the question as closed? – Vi. Mar 24 '10 at 23:43
1  
Post your findings as an answer and in 48 hours you can accept it. – Dennis Williamson Mar 24 '10 at 23:53
feedback

1 Answer

up vote 0 down vote accepted

The problems were:

  1. Missing "setsid" option in right side of socat. It will cause bash not to be controller of session.
  2. Using "-" in the left side of socat. The proper thing is `tty`,raw,echo=0.

Now I can have a shell over all things socat can support and can start vim/screen/ssh, interrupt ping with ^C, end cat with ^D and do everything else in that shell.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.