-
Notifications
You must be signed in to change notification settings - Fork 184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EOFError connecting to RHEL5 / RHEL6 remotes #111
Comments
Please set plumbum's logging to debug and try again. logging.basicConfig(level = logging.DEBUG) It should show you where it failed
|
|
Could it be caused by the login shell being tcsh on those machines? |
OK - I think it is the shell. I've been able to connect to a RHEL5 machine where I have bash as the shell. Any workaround? |
Try adding /bin/sh instead of executing the empty string, which runs the
|
Thanks, but how? I've tried using ssh_opts but that puts the command in before the hostname resulting in ssh trying to connect to /bin/bash and interpret the hostname as the command.. Python
Debug printout
|
the relevant line is: https://github.com/tomerfiliba/plumbum/blob/master/plumbum/machines/ssh_machine.py#L149 change |
I'm having the exact same issue - even after applying the self.popen fix.
|
Same issue with latest plumbum (1.4.2). Tried to switch from default "tcsh" to both "sh" and "bash" before running script - it always ends up with the "EOFError". |
Been having the same issue on Solaris 10 SPARC, the default shell on the system is set to bash. I've not noticed this issue with Solaris 11 X86. Other variations untested so far. |
Does this happen with the latest plumbum? I can connect to CentOS 5. |
Fun fact: if you can't connect because the remote does not exist, this is exactly the error you get. Try to connect to a non-existing server and you'll see this same error message. |
Actually after changing the default shell on the REMOTE machine to "bash" everything works well. In comment above I've misinterpreted recommendations and changed the shell on the host machine, not the remote one. Still, what's so special with tcsh that it doesn't work? |
The problem is that tsch cannot redirect output, so the commands: printenv "HOSTNAME" ;
echo ;
echo $? ;
echo \'--.END664027832.1558471.--\' ;
echo \'--.END664027832.1558471.--\' 1 > & 2' fails to write the marker to the stderr when the remote machine is tcsh. So, plumbum doesn't see the marker and acts like the machine isn't there. There might not be a fix, except changing the shell on the remote machine, but I'm hoping for better error messages for this case, and the no host found case. If no one finds a solution by the time I finish my color addition, I'll see what I can do. (PS: I see this too when setting the remote shell to tsch. Have I mentioned I don't like c shell?) |
Plumbum's |
I'm currently experiencing issues setting up remotes towards RHEL5 & 6 remotes. I'm getting a stack trace with EOFError (see below). plumbum version 1.4.0. Python 3.2.3 & 3.3.4
Connecting to remote Mac OS X 10.9.1 and Ubuntu 12.04.4 LTS works fine.
RHEL 5 OpenSSH
RHEL 6 OpenSSH
OS X 10.9.1 OpenSSH
Ubuntu 12.04 OpenSSH
Traceback
The text was updated successfully, but these errors were encountered: