1

So far I've been using Moba Xterm on Windows to connect via ssh to remote linux machines on my network, but I'd like to switch to Emacs.

However, just running an eshell or shell buffer and trying to ssh from there ends poorly:

Pseudo-terminal will not be allocated because stdin is not a terminal.

My understanding is that this is because shell and eshell are not "real" terminals like ansi-term, it also seems that they can't handle printing output and/or taking input in real time very well as they tend to print to stdout all of a program's output at once when it finishes.

I would like to access those machines directly from an emacs buffer, possibly with dired in the same frame to manipulate files at the same time. I know about tramp but I was not able to connect to any machines using it (connections time out as if those machines were not responding), and I can't access remote folders either. I know this should be possible in principle because I can ssh from powershell with no problems.

So to clarify, my question boils down to this: what is the recommended procedure for connecting to remote machines via ssh in interactive mode on Windows, and what is the recommended procedure for accessing their files via dired?

1
  • Try ssh -tt host instead.
    – Jakuje
    Aug 17, 2016 at 13:45

3 Answers 3

2

Well Tramp is the method for using the likes of dired on remote hosts. You'll want to debug why that's not working for you.

You don't explain why you're not using ansi-term, given that you seemingly know that it solves the problems you're experiencing. You could then use https://emacs.stackexchange.com/a/18678 to streamline the process.

2

I suppose your local machine runs MS Windows. In this case, I recommend you to install PuTTY locally. Afterwards, you shall be able to connect your remote machines via Tramp, using the plink method.

If this doesn't work for you, we will be able to debug.

1

You must use the "-T" option with your ssh command in the shell to avoid the pseudo terminal error message.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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