VMware Cloud Community
serpi
Contributor
Contributor

Cannot install VMWare tools

Hi,

we have an ESXi Server, just upgraded from ESXi 4.1u1 to 5.0.

There is an Linux VM running but I cannot install VMWare Tools on it (this wasn't even possible with 4.1U1 and the same error is now on 5.0).

It's (AFAIK) an older Ubuntu 32 Bit machine, "uname -a" gives "Linux xxx 2.6.15-28-server #1 SMP Tue Mar 13 21:09:03 UTC 2007 i686 GNU/Linux".

There's no X installed, shell only, updating Linux is not an option.

When running the tar.gz installer it's running for some time, but when running "vmware-config-tools.pl"  it stop's with the error "Could not find Parent Node...".

The last output of the script is

-----

make -C $PWD SRCROOT=$PWD\. \

    MODULEBUILDDIR= postbuild

make[1]: Entering directory '/tmp/vmware-root/modules/vmblock-only'

make[1]: 'postbuild' is up to date.

make[1]: Leaving directory '/tmp/vmware-root/modules/vmblock-only'

cp -f vmblock.ko ./../vmblock.o

make: Leaving directory '/tmp/vmware-root/modules/vmblock-only'

No X install found.

Could not find Parent Node...

-----

On ESX 3.5 there was no error installing VMWare Tools.

We were running the machine on ESXi4.1U1 with the ESX3.5 MWare tools, but now I lost the network connections after a reboot (I think because the old VMWare tools are uninstalled).

Any ideas how I can get the new VMWare tools installed?

Thanks & Ciao,

Alfred Schwarz

4 Replies
serpi
Contributor
Contributor

OK, after fiddling around with our Linux specialist we found then problem.

In the vmware-tools-config.pl is a subroutine "get_udev_tags".

There it uses the command "udevinfo -q path /dev/sda" on out machine to find scsi, which gives as result "/block/sda".

Here it calls "udevinfo -a -p /block/sda" and searches for the string "{vendor}=="VMware" which is found.

But not it looks for a line

"if ($txt =~ m/^'(.*?)':/s) { " for a special string at the beginning of a line, but this is not returned, instead it returnes

"looking at the device chain at '/sys/devices/pci0000:00/0000:00:10.0/host0/target0:0:0/0:0:0:0':"

So we changed the line to "if ($txt =~ m/'(.*?)':/s) {" (removing the "^" which told to search for ' at the beginng of the line) and the script worked!

Well, I think it's not easy to support all that kinds of Linux out there...

Thanks anyway,

Alfred Schwarz

chrwei
Enthusiast
Enthusiast

worked for me too, thanks for finding and posting the solution!

0 Kudos
mwilkinson
Contributor
Contributor

Nice! This worked for me as well. Running on vSphere 5.5 trying to breathe life back into a Fedora Core 4 VM.

0 Kudos
gcarelli
Contributor
Contributor

It worked. Thanks! Reviving a FC4 also over here.

0 Kudos