SSH client not showing prompt after successful login

sshssh-agentssh-tunnel

I'm having problems with my SSH client on Ubuntu 10.10.

When I switch on my computer and open a Terminal and execute the command ssh user@host, it gives me a password prompt after which I enter the right password, I then get a prompt to execute my commands on the remote computer.

Now the problem is, after a little while (probably around 10 minutes), the terminal window stops accepting commands (No matter what I type, nothing shows). Once this happens, I close the Terminal window and try to start all over again by opening another Terminal window. But this time around, after entering the right password, I don't get a welcome message or prompt. The cursor just keeps blinking on a new line.

I ran the ssh command with -v parameter and the message I get after a successful login is:

debug1: Authentication succeeded (password).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = en_GB.utf8

Still the cursor keeps blinking on a new line without a prompt.

However, Putty SSH client works perfectly on the same machine.

Best Answer

I experienced the same issue, though it was not an ssh issue - when logging on locally to the machine the same thing occurred: successful logon with the 'last logon' message displayed, and then a blinking cursor but no prompt/activity. Through trial and error I was able to resolve the same problem as follows:

  1. Log on as root (another user with sudo privileges should also work, so long as it is not the user experiencing the problem)
  2. Go to the users home directory # /home/user/
  3. Look for a symbolic link file with .LOCKED appended to it. In my case this link pointed to a pid which didn't exist. Delete this link.
  4. Log out

After doing this both my local and ssh logins resulted in prompt being displayed correctly. As a side note I'm using zsh as my shell. I can't say if this will work for other shells but I suspect that it would.