Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I followed this article and I have the desktop running on Ubuntu on an EC2 instance and I can connect to it from TightVNC. When I try to use Terminal, when I type certain characters, they seems to get lost. For example, I can type passw but the when I try to type d that character doesn't appear. If I then press Enter, the Terminal window minimizes. I can't type the character d at all. All other letters & numbers are fine. How can I fix this?

BTW, I'm using Bash in Terminal. Everything works when I SSH into the instance using PuTTY. It's only when I use a Terminal instance from TightVNC that this problem occurs.

share|improve this question

2 Answers 2

up vote 1 down vote accepted

Not exactly and answer but VNC is a mess. I suggest you migrate to NX. Its faster and uses ssh by default. I use FreeNX on Ubuntu on EC2.

edit: I was able to replicate this bug.

Possible solutions:

http://linuxexpresso.wordpress.com/2010/10/17/howto-ubuntu-vnc-encoding-server/

http://unix.stackexchange.com/questions/10608/d-key-on-vnc-viewer-minimises-all-windows

share|improve this answer
    
I tried a couple of tutorials (help.ubuntu.com/community/FreeNX, help.ubuntu.com/community/NomachineNX, aws-musings.com/…, ) to get NX installed on my Ubuntu instance but no luck. If you have any pointers, let me know. –  Sajee May 9 '11 at 19:56

Can you type an upper-case "D"? Are you using Bash? Try this:

Type the following, but don't press Enter:

binD '"D":self-insert'

Now move your cursor to each capital "D" and press Alt-l (that's lower-case ell) or Esc l to change the "D" to "d". Once you've done both, press Ctrl-j.

Now type this command and press Ctrl-j:

bind '"\C-m": accept-line'

Next, check your ~/.inputrc file for invalid key bindings (they won't have the bind command or the outermost quotes). You should also check your shell startup files for invalid bind commands.

share|improve this answer
    
I was able to enter binD '"D":self-insert' with the lowercase d. But I couldn't enter the second command because lower case d still doesn't work. When I tried to type the d in bind, the Terminal window would minimize. So it looks like the first bind command didn't work. Yes I'm using Bash. –  Sajee Mar 17 '11 at 13:04
    
@Sajee: Try xmodmap -pke | less and see if there's anything odd about "d" or "Return". You may have to use the Alt-l trick to get the "d" in "xmodmap" and you may need to use Ctrl-j to enter the command. It may also work better to redirect the output to a file so you can come back and view it in an SSH session. –  Dennis Williamson Mar 17 '11 at 15:05
    
@Dennis: the results of the xmodmap shows this for d: "keycode 40 = d D" and for Return: "keycode 36 = Return". Does this look right? –  Sajee Mar 17 '11 at 17:25
    
@Sajee: It's the same for me (at least through SSH and PuTTY). Do you get the same results for both VNC and PuTTY? There's somewhere you've got a keymapping out of whack and at the moment I'm drawing a blank where else to look. Try running xev and press some keys and see what it shows. –  Dennis Williamson Mar 17 '11 at 17:31
    
@Dennis: pressing d in xev causes the Terminal and xev windows to mimimize. –  Sajee Mar 17 '11 at 17:52

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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