Cursor keys not working in Ubuntu 8.10 VMWare client

After last week’s problem with the Terminal Services client, I also experienced problems with the cursor keys in the VMWare client for Ubuntu 8.10. This was particularly annoying, since I use Quicken in a VMWare machine, and the selection of categories is much easier with the cursor keys than with the mouse.

It turns out that this is a bug in Ubuntu Intrepid 8.10. None of the patches since October 2008 have addressed this issue, but the manual fix is very simple:

  • Open a terminal window
  • Type the following in the terminal:

    echo ‘xkeymap.nokeycodeMap = true’ > ~/.vmware/config

After entering this you have to restart your VMWare client session. If it doesn’t work, try restarting the VMWare server, however, since this is a client setting, it shouldn’t affect the server or be affected by server settings.

Ubuntu 8.10 connect to Cisco VPN through vpnc

One of the things I need to do with my home machine is occasionally connect to our VPN at work. In 6.06LTS this required downloading the Cisco VPN client, compile it, install it, and hope it will work in the next kernel update. On top of that, you had to run a script to create the VPN connection.

In 8.10 Intrepid Ibex this is much simpler, and much more elgant. First, you need to install the VPN Connection Manager (VPNC) package. When you do this through the Add/Remove Applications, it should install three packages:

  • vpnc
  • resolvconf
  • network-manager-vpnc
The first two are essential, but the third one is the kicker in 8.10: it allows you to manage your VPN certificates, and choose which connections to make and break.
After you’ve installed these three packages, do the following:
  • right-click on the Network Manager applet.
  • Choose Edit connections
  • Click the VPN tab
  • You should have the options to Add a connection manually, or to Import a VPN certificate.
  • Since our network admin provided me with a certificate, I chose Import, and selected the certificate file.
  • The import will try to get as much information as possible out of the selected file. In most cases, you need to provide the group and user password.
  • If the group password is encrypted, it can be determined by taking the encrypted string and running it through the Cisco decoder at http://www.unix-ag.uni-kl.de/~massar/bin/cisco-decode
  • Save your changes
  • Close the Edit Connections screen
You should now be able to left-click on the Network Manager applet, select VPN connections, and click on the newly added connection. The Network icon will show a circling star for a couple of seconds, and then indicate that the VPN connection is established by showing a yellow padlock in the bottom right of the icon.

Disconnecting is just as easy: left-click on the applet, select VPN connections, and select Disconnect VPN.

Ubuntu 8.10 installation – GRUB error 18

Over the Christmas break I’ve installed Ubuntu 8.10 on my main machine. The installation was not upgradeable without some serious wizardry (the /boot partition was too small, and increasing that on a full disk is not easy), so I decided to do a fresh install.

After going through all the installation steps, and booting up Ubuntu 8.10 for the first time, I was greeted with a GRUB error 18. Some Googling revealed that this was caused by the hard disk being too large for the BIOS to handle. And there was even a helpful post that described a three step process:

  • Set your hard disk for LBA mode
  • Install Ubuntu
  • Set your hard disk back to normal
Unfortunately, this didn’t work for me. The installation resulted in the same GRUB error. However, there is an easier fix.
GRUB error 18 means actually that the kernel cannot be found in the first 1023 cylinders. You can change that by creating a /boot partition that is completely within those first 1023 cylinders. So, after the first try at installing, and failing with the GRUB error, try this:
  • Restart your machine, with the Ubuntu CD as startup.
  • Install Ubuntu as normal, until you get to the partition information.
  • Select Manual from the partition options.
  • The only thing you need to change is the main partition (/). Delete the one that is on the disk now. The partitioner may tell you it needs to write changes to the disk – by all means, let it write them.
  • Next, create a partition at the very beginning of the hard disk, of sufficient size, but not too big (I decided on 1GB, but it may be better to go with 512KB or even smaller – not too small, since I couldn’t do an upgrade on my 128KB boot partition). Choose ext2 as file system – you won’t need journaling or anything fancy on that partition. Your mount point is /boot.
  • Finally, create the main partition, covering the remainder of the hard disk. Make the file system ext3 – you want the journaling etc. on this one.
  • You should now have a /boot partition at the beginning of your disk, a / partition for most of the rest, and a small swap partition (about twice the size of your memory). If not, you need to manually adjust the partitions until you have all three.
  • Continue with the rest of the installation.
Your mileage may vary, but this worked for me (it’s also the trick I used when installing 6.06LTS). Hope this helps someone!