<< Back to previous view

[ATN-42] vmware tools is variously broken under Ubuntu Created: 23/Feb/09  Updated: 14/Apr/09  Due: 30/Jun/09

Status: Open
Project: Athena 10
Component/s: None
Affects Version/s: Early Cluster, Cluster with Quickstation, Production
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Bill Cattey Assignee: Bill Cattey
Resolution: Unresolved Votes: 0
Remaining Estimate: 1 week
Time Spent: Not Specified
Original Estimate: 1 week
Environment: Any use of Ubuntu as a vmware guest.


 Description   
VMware tools provides useful and important performance and functionality enhancement when installed and running inside a vmware guest: Dynamic resizing of the guest display, mouse focus management, text cut and paste outside the guest, drag and drop outside the guest, a sharable filesystem, and higher performance network driver.

Unfortunately VMware tools is variously broken under ubuntu.

Under Ubuntu 8.04 the breakage is merely inconvenient: The kernel modules are rebuilt even when vmware-config-tools.pl is run to resize the default display. Smarter module rebuild would be nice.

Under Ubuntu 8.10 there are extreme forms of breakage that render the system nigh unusable.

0. VMware tools from VMware, normally available with the "Install VMware Tools" host command
will not build. Instead, users who dig into the VMware forums will find they need open-vm-tools.

Ubuntu 8.10 offers vmware-tools, vmware-toolbox, and (utilized with debian module assistant) the open-vm
module package as part of the "Universe" repository.

1. When a user installs vmware-tools, networking goes off line, and rebooting does not help.

2. After you get vmware-tools to install and to use vmxnet, the vmware guestd program will not run because the port to Ubuntu contained a raft of errors. The vmware guestd program is a prerequisite for other useful functionality.

3. After the errors are corrected in vmware guestd, the vmware-user program will not auto-start because of a missing line in the gdm configuration file that is supposed to make it run. Correcting that fault will enable screen resizing and text cut/paste outside the guest.

4. After the vmware-user program is running, drag and drop does not work, because the vmware-user-suid-wrapper fails to execute part of its stated mission: To load the required vmblock kernel module.

 Comments   
Comment by Bill Cattey [ 23/Feb/09 06:04 PM ]
Problem 1: installing open-vm-tools breaks networking:

This problem is causes by an init script (called by the install action, and on every reboot).

/etc/init.d/open-vm-tools unconditionally unloads the working pcnet32 kernel module and attempts to load and utilize the nonexistent vmxnet driver.

This bug is being tracked at:
https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/289921

A fix is known, and tested for 8.10, and for 9.04, but not yet released.
(wdc and andersk isolated this fault. It took about 4 hours. andersk identified the necessary stuff to backport from debian lenny to fix this.)

The work-around is to manually bring networking back up:
        modprobe pcnet32
        /etc/init.d/networking restart

and then use module assistant to build the vmxnet driver.
        m-a a-i open-vm

and finally to schedule the open-vm-tools init script where it will operate correctly:
        update-rc.d -f open-vm-tools remove
        update-rc.d open-vm-tools start 38 S . stop 38 0 6 .
        reboot

This enables open-vm-tools to be installed, and to use the vmxnet driver correctly.
Comment by Bill Cattey [ 23/Feb/09 06:08 PM ]
Problem 2: Getting a working open-vmware-tools guestd.

andersk identified the issues and cleaned up the broken code. This bug is being tracked at:

https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/306835

The bad code was only incorporated in 8.10, 9.04 should be un-affected. But until the amended package is available for 8.10, the open-vm-tools will not work as they should.
Comment by Bill Cattey [ 23/Feb/09 06:13 PM ]
Problem 3:

Once the root-side guestd is running, the user-side vmware-user progam does not automatically start.

This is due to one line missing from /etc/xdg/autostart/vmware-user.desktop
Add the line "Type=Application" anywhere in the file.

This bug is being tracked at:

https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/302226

This fix would be part of a revixed open-vm-tools package for 8.10, and possibly 9.04.
Comment by Bill Cattey [ 23/Feb/09 06:15 PM ]
Problem 4:

Once problem 3 is resolved, you can cut and paste text, but you can't drag and drop.

This is owing to the vmware-user-suid-wrapper missing the code that loads the vmblock kernel module, and mounts the appropriate filesystem.

This bug is being tracked at:

https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/332323

wdc has drafted code that might remedy this problem.
Comment by Bill Cattey [ 24/Feb/09 07:43 PM ]
I've written and tested the code to remedy problem 4 and appended it to the LP Bug 332323.

There is an additional defect to correct: The modified program, even though it is supposed to be a suid wrapper is not installed suid root. The packaging needs to be corrected to perform this amended install.

Comment by Evan Broder [ 09/Apr/09 11:18 PM ]
This is something else where I think all the relevant issues have been fixed in Jaunty. Is that sufficient to close the bug here?
Comment by Bill Cattey [ 10/Apr/09 12:19 AM ]
There has been no traffic whatsoever on my LP Bug 332323.

I think Anders said that my diff wasn't created in a 100% perfect way and that that might be an obstacle to getting it accepted.

So 3 out of 4 problems are fixed in Jaunty. #4 has received no attention since I submitted a patch in February. Have you any suggestions on how I might constructively engage folks to nudge it forward?

Comment by Evan Broder [ 10/Apr/09 11:36 PM ]
The only issue I see in the preparation of the patch itself is that you based it off of a package in Anders' PPA (2008.08.08-109361-1ubuntu2.2*~andersk6*). You should instead base your patches off of whatever package is currently in the development release (right now, that's 2008.11.18-130226-1lenny1).

But I think a bigger issue is that this is just a very substantial patch to be incorporating into Ubuntu without any involvement from the upstream maintainers. You should see if this is still an issue in the current upstream code (http://open-vm-tools.sourceforge.net/) and file a bug there if it is. If it isn't, figure out how they fixed it and try to incorporate their patch as a new Ubuntu revision.
Comment by Bill Cattey [ 11/Apr/09 12:10 AM ]
That is a very sensible next step. I will make that test, and if necessary open a bug upstream.
Comment by Bill Cattey [ 14/Apr/09 05:27 PM ]
I had a difficult time finding upstream source that actually contained the vmware-user-suid-wrapper. The project site says they've converted to git, but their git repository is offline.

I finally found a download, and confirmed that the code is missing upstream, even in the 2009-03-18 epoch.

I've joined the developer list since it seems a pretty small community, and submitted my patch there. Let's see what happens.

Generated at Wed Apr 29 10:34:16 EDT 2009 by Jonathan D Reed using JIRA Enterprise Edition, Version: 3.11-#288.