VMware arrow keys issues

Author: | Posted in howto 3 Comments

After a kernel update on Fedora 10 followed by a reboot and VMware reconfiguration (vmware-config.pl) the arrow keys inside the Guest OS got all messed up. None of them seemed to work anymore (neither did Home, End, Page Up, Page Down).

This issue is quite old and VMware doesn’t seem to care enough about it, let alone fix it. It has been reported so far on several Linux distributions including Fedora and Ubuntu running vmware player, server or workstation. I haven’t tried vmware server 2 yet as I’m still pleased with vmware server 1.0.8 (latest release as of March 2009) and I usually prefer the lighter VirtualBox.

Searching the Internet I found several fixes and a complete explanation. Setting xkeymap.nokeycodeMap=true did the trick for me, however I was not satisfied with having to manually edit /etc/vmware/config after each kernel upgrade.

vmware_arrow_keys

Solution

There are several ways to have the key code assigned automatically each time vmware-config.pl is issued. Upon a successful configuration, the Perl script attempts to start the vmware service. That’s why I prefer editing the vmware startup script and use it to modify the configuration file.

The following solution works on Fedora and should work on most systems.

  • go to /etc/init.d and open vmware in your favourite editor
  • locate the lines starting with

case “$1” in
start)

  • add the following immediately below the start) line

#ensure xkeymap is on
if ! grep xkeymap /etc/vmware/config 1>/dev/null 2>&1; then
echo “xkeymap.nokeycodeMap = true” >> /etc/vmware/config
fi

  • save the file and you’re done! Now each time the vmware service is started (manually or automatically), the startup script will ensure the key code mapping is set.

You can substitute xkeymap.nokeycodeMap with whichever key code works for you.

Comments
  1. Posted by igs
  2. Posted by Sanjay
  3. Posted by sciuruis

Add Your Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.