When trying to cat
piped to ssh
from a linux node server to this windows 10 laptop I get this message:
Pseudo-terminal will not be allocated because stdin is not a terminal
Why is this happening?
What does this mean, Pseudo-terminal will not be allocated?
I guess, "Pseudo-terminal is a terminal spawn and will not be given a disk partition" maybe???
What does this mean, stdin is not a terminal?
Which is this stdin that is referred to, server or client? I ask this question because it reads like the issue maybe on the windows laptop; and, my problem is this error prevents the node from writing to the laptop.
The story:
I have been using linux on nodes for several months now, linux in the cloud and windows 10 at home.
I have been able to scp
successfully everytime from windows to linux. Now, I want to pull in files into VSCode from linux so that I can do stuff with them on a gui which none of the linux nodes have. I have imagined that it should be simple, ssh-keygen from the linux node and scp the pub key to the windows laptop. This never worked; this always timed out, no error message; yet, "lost connection" was the return message.
So I try cat
piped to ssh
and I get the error message, pseudo-terminal will not be allocated because stdin is not a cli
. This error comes back immediately and then after some waiting the prompt returns with the time-out message.
I believe this message from ssh
occurs due to the same reason as the timeout from scp
even though scp
has no error message. Tell me if I am wrong here if you can. I also think that if I can understand this error message given by ssh
it might be able to point me in the right direction to continue testing. That is why the question, "Which is this stdin that is referred to, server or client?"
When I started setting-up the ssh tunnel from the linux node to the windows laptop I was trying to scp the public key over to the windows laptop and would recieve the timeout everytime, many times! So I say to myself just manually carry over the public key; and, I did, placing it were it is expected. Then I converted the tests to use this testing file - test_scpncat.txt
. It is just a "hello world" text file.
This is the message I got when setting-up the keys with scp
.
ssh: connect to host <ip_address> port 22: Connection timed out lost connection
This is the message I get after manually setting-up the keys then with scp
and the test file:
ssh: connect to host <ip_address> port 22: Connection timed out lost connection
This is the message I get after manually setting-up the keys then with cat | ssh
and the test file:
Pseudo-terminal will not be allocated because stdin is not a terminal.
ssh: connect to host <ip_address> port 22: Connection timed out
These are the test scripts; someone might ask:
$ scp ~/test_scpncat.txt User@<ip_address>:C:\Users\User\test_scpncat.txt
$ cat ~/test_scpncat.txt | ssh User@<ip_address> >> C:\Users\user\test_scpncat.txt
Thanks in advance!