VMware Communities
dcstar
Contributor
Contributor

WMware Workstation 8 breaks Ubuntu

I started having major problems with my 10.04 Ubuntu system recently with dirty filesystems having to be checked at each boot up slowing things down and I have finally found the culprit - VMware Workstation Version 8 (VMware-Workstation-Full-8.0.0-471780.x86_64.bundle).

The problem is that the VMware install process renames ALL the file links in /etc/rc0.d & /etc/rc6.d. The end result is that Ubuntu no longer shuts down correctly and the system closes before all filesystems are cleanly unmounted.

As an example this is what /etc/rc0.d should have in it:

K20boinc-client
K20clamav-freshclam
K20hddtemp
K20postfix
K20samba4
K20xrdp
K31atieventsd
K50pcscd
K74bluetooth
K80openvpn
K99policycoreutils
README
S10unattended-upgrades
S15wpa-ifupdown
S20sendsigs
S30urandom
S31umountnfs.sh
S35networking
S40umountfs
S60umountroot
S90halt

And this is what is is after the VMware install:

K01bluetooth
K01boinc-client
K01hddtemp
K01openvpn
K01pcscd
K01policycoreutils
K01postfix
K01samba4
K01vmware-workstation-server
K01xrdp
K02atieventsd
K02vmware
K05clamav-freshclam
README
S01halt
S01networking
S01sendsigs
S01umountfs
S01umountnfs.sh
S01umountroot
S01unattended-upgrades
S02urandom
S02wpa-ifupdown

As you can see, the critical digits which determine what order each script is executed in are now totally changed.

Here is what a correct /etc/rc6.d folder should contain:

K20boinc-client
K20clamav-freshclam
K20hddtemp
K20postfix
K20samba4
K20xrdp
K31atieventsd
K50pcscd
K74bluetooth
K80openvpn
K99policycoreutils
README
S10unattended-upgrades
S15wpa-ifupdown
S20sendsigs
S30urandom
S31umountnfs.sh
S35networking
S40umountfs
S60umountroot
S90reboot

If you have installed VMware Workstation/Player on your Ubuntu system you may want to check your system for this problem and manually rename the relevant file links (ignore links that do not apply to your system).

Reply
0 Kudos
20 Replies
dcstar
Contributor
Contributor

And once I had manually fixed my scripts, the VMware Player component of this package offers an upgrade that breaks them AGAIN!

I have now had to create a script to rename my /etc/rc0.d & /etc/rc6.d files because VMware Player 4 makes a mess of them.

Reply
0 Kudos
jtech201110141
Enthusiast
Enthusiast

Same thing here. All rc.d -files are messed up by Workstation 8 install. My host is Ubuntu 11.04 64-bit.

VMWARE, FIX THIS BUG!

rc.d files after Workstation 8 install:

$ /bin/ls -A1 /etc/rc?.d/

/etc/rc0.d:
K01speech-dispatcher
K01vmware-workstation-server
K02bluetooth
K02vmware
README
S01halt
S01networking
S01sendsigs
S01umountfs
S01umountnfs.sh
S01umountroot
S01unattended-upgrades
S02urandom

/etc/rc1.d:
K01acpi-support
K01kerneloops
K01pulseaudio
K01saned
K01speech-dispatcher
K02bluetooth
README
S01dns-clean
S01killprocs
S01pppd-dns
S02single

/etc/rc2.d:
K01vmware-USBArbitrator
README
S01binfmt-support
S01bluetooth
S01dns-clean
S01kerneloops
S01pppd-dns
S01pulseaudio
S01rsync
S01saned
S01speech-dispatcher
S01sudo
S01vmware
S02acpi-support
S02vmware-workstation-server
S03grub-common
S03ondemand
S03rc.local
S50vmware-USBArbitrator

/etc/rc3.d:
K01vmware-USBArbitrator
README
S01binfmt-support
S01bluetooth
S01dns-clean
S01kerneloops
S01pppd-dns
S01pulseaudio
S01rsync
S01saned
S01speech-dispatcher
S01sudo
S01vmware
S02acpi-support
S02vmware-workstation-server
S03grub-common
S03ondemand
S03rc.local
S50vmware-USBArbitrator

/etc/rc4.d:
README
S01binfmt-support
S01bluetooth
S01dns-clean
S01kerneloops
S01pppd-dns
S01pulseaudio
S01rsync
S01saned
S01speech-dispatcher
S01sudo
S02acpi-support
S03grub-common
S03ondemand
S03rc.local

/etc/rc5.d:
K01vmware-USBArbitrator
README
S01binfmt-support
S01bluetooth
S01dns-clean
S01kerneloops
S01pppd-dns
S01pulseaudio
S01rsync
S01saned
S01speech-dispatcher
S01sudo
S01vmware
S02acpi-support
S02vmware-workstation-server
S03grub-common
S03ondemand
S03rc.local
S50vmware-USBArbitrator

/etc/rc6.d:
K01speech-dispatcher
K01vmware-workstation-server
K02bluetooth
K02vmware
README
S01networking
S01reboot
S01sendsigs
S01umountfs
S01umountnfs.sh
S01umountroot
S01unattended-upgrades
S02urandom

/etc/rcS.d:
README
S01apparmor
S01brltty
S01x11-common
S02pcmciautils
S02urandom

rc.d -files before Workstation 8 install:

/etc/rc0.d:

K20speech-dispatcher

K74bluetooth

README

S10unattended-upgrades

S20sendsigs

S30urandom

S31umountnfs.sh

S35networking

S40umountfs

S60umountroot

S90halt

/etc/rc1.d:

K15pulseaudio

K20acpi-support

K20kerneloops

K20saned

K20speech-dispatcher

K74bluetooth

README

S30killprocs

S70dns-clean

S70pppd-dns

S90single

/etc/rc2.d:

README

S20kerneloops

S20speech-dispatcher

S25bluetooth

S50pulseaudio

S50rsync

S50saned

S70dns-clean

S70pppd-dns

S75sudo

S90binfmt-support

S99acpi-support

S99grub-common

S99ondemand

S99rc.local

/etc/rc3.d:

README

S20kerneloops

S20speech-dispatcher

S25bluetooth

S50pulseaudio

S50rsync

S50saned

S70dns-clean

S70pppd-dns

S75sudo

S90binfmt-support

S99acpi-support

S99grub-common

S99ondemand

S99rc.local

/etc/rc4.d:

README

S20kerneloops

S20speech-dispatcher

S25bluetooth

S50pulseaudio

S50rsync

S50saned

S70dns-clean

S70pppd-dns

S75sudo

S90binfmt-support

S99acpi-support

S99grub-common

S99ondemand

S99rc.local

/etc/rc5.d:

README

S20kerneloops

S20speech-dispatcher

S25bluetooth

S50pulseaudio

S50rsync

S50saned

S70dns-clean

S70pppd-dns

S75sudo

S90binfmt-support

S99acpi-support

S99grub-common

S99ondemand

S99rc.local

/etc/rc6.d:

K20speech-dispatcher

K74bluetooth

README

S10unattended-upgrades

S20sendsigs

S30urandom

S31umountnfs.sh

S35networking

S40umountfs

S60umountroot

S90reboot

/etc/rcS.d:

README

S13pcmciautils

S25brltty

S37apparmor

S55urandom

S70x11-common

Reply
0 Kudos
jtech201110141
Enthusiast
Enthusiast

Just made an bug report for mdunn-vmware and JJoel42.

Reply
0 Kudos
JJoel42
Hot Shot
Hot Shot

We are looking at this now!

Reply
0 Kudos
jkl201110141
Contributor
Contributor

Perhaps the problem is that the installer uses insserv instead of update-rc.d. See:

https://bugs.launchpad.net/ubuntu/+source/insserv/+bug/811675

In any case, please update this thread when the problem is fixed.

Reply
0 Kudos
jkl201110141
Contributor
Contributor

Having looked at this further, it is almost certainly the case that the problem is with insserv. While the installer is waiting for a response, you can look at the installer files and confirm that it uses insserv. In particular, look at the file

/tmp/vmis.XXXXXX/install/vmware-installer/bin/configure-initscript.sh

The XXXXXX part is random.

It is true that insserv should not be behaving as badly as it does, but in any case the VMWare installer should not be using insserv on Debian/Ubuntu systems. The policy manual explicitly states that update-rc.d is the right tool for manipulating init scripts.

http://www.debian.org/doc/debian-policy/ch-opersys.html

Until VMWare fixes this, I suggest the following workaround for users:

Rename /sbin/insserv to /sbin/insserv.bak (or something). This will prevent it from being found, and the installer will fall back to using update-rc.d like it should. It might be a good idea to keep it like that, to prevent other installers from doing the same thing.

Reply
0 Kudos
fossol
Contributor
Contributor

Ubuntu 11.10 Kernel 3.0.0-12-generic

VMware 8.0.0-471780

I took your advice and renamed insserv and the install went flawlessly. Up and running!

Reply
0 Kudos
admin
Immortal
Immortal

I can also confirm that this appears to be the best viable workaround for the time being.  It worked when I tested it out on 11.10 GA 64bit with top of tree WS.

Reply
0 Kudos
gregVM
Contributor
Contributor

Any progress on getting this fixed? <bump>

Reply
0 Kudos
dcstar
Contributor
Contributor

Still broken in the Player 4.0.1 release, very dissapointing that VMWare has not fixed this by now.

Reply
0 Kudos
dariusd
VMware Employee
VMware Employee

Hi dcstar,

Do you have a /usr/sbin/update-rc.d or another update-rc.d in root's $PATH?

Workstation 8.0.1 (and Player 4.0.1) were expected to have addressed this issue by preferring the use of update-rc.d over insserv, but we will still fall back to insserv if update-rc.d is unavailable.

Thanks,

--

Darius

Reply
0 Kudos
dcstar
Contributor
Contributor

Yep:

root@dc-master:/home/dc# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
root@dc-master:/home/dc# locate update-rc.d
/usr/sbin/update-rc.d
/usr/sbin/update-rc.d-insserv

........

root@dc-master:/usr/sbin# ls -la update-rc.d*
-rwxr-xr-x 1 root root 16347 2011-06-10 05:46 update-rc.d
-rwxr-xr-x 1 root root 17105 2009-11-05 19:37 update-rc.d-insserv

Interestingly on my Ubuntu 10.04.3 system update-rc.d has a MIME Type of "text/x-dsrc" even though it contains PERL code. update-rc.d-insserv seems to be correctly listed as "application/x-perl".

Actually I noticed that the upgrade to 4.0.1 did a full uninstall before it installed, did the code in the uninstall procedure stuff up my RC scripts before the install (that is supposed to now work correctly) ran? One hopes the same fixes in the 4.0.1 install code were also used in the 4.0.0 uninstall, otherwise if the same old 4.0.0 code that ruined the start order of my scripts was used in the uninstall then chances are it will again cause damage to any system with an existing install.

Anyhow, I have now (again) manually fixed my rc.0, rc.2, rc.6 & rc.S scripts and await the next VMware Workstation release to see if it buggers them up again.

Reply
0 Kudos
dcstar
Contributor
Contributor

I have just created a fresh Ubuntu 10.04.3 test system and installed Player 4.0.1 and it did install correctly without changing the rc. scripts.

The upgrade from 4.0.0 must still have used the bad code when doing the uninstall.

Reply
0 Kudos
dariusd
VMware Employee
VMware Employee

Hi dcstar,

Cool, thanks for posting back with that update.  I'm glad to hear it's resolved for you and sorry for the trouble this has caused!

Cheers,

--

Darius

Reply
0 Kudos
Noel
Expert
Expert

Is there an easy way to repair all of the links, or just a laborious manual process?

Reply
0 Kudos
dcstar
Contributor
Contributor

I had to create a script to manually "mv" each entry.

I used "ls -1 > filelist" to create a one line listing of each entry, then used a text editor to add in the "mv " at the front of each line, then duplicate each filename and substitute the correct run level (taken off a known good system)

This is my rc0.d file:

mv K01bluetooth            K74bluetooth
mv K01boinc-client        K20boinc-client
mv K01hddtemp            K20hddtemp
mv K01openvpn            K80openvpn
mv K01pcscd            K20pcscd
mv K01policycoreutils        K99policycoreutils
mv K01postfix            K20postfix
mv K01samba4            K20samba4
mv K01xrdp            K20xrdp
mv K02atieventsd        K31atieventsd
mv K05clamav-freshclam        K20clamav-freshclam
mv K08vmware            K08vmware
mv S01halt            S90halt
mv S01networking        S35networking
mv S01sendsigs            S20sendsigs
mv S01umountfs            S40umountfs
mv S01umountnfs.sh        S31umountnfs.sh
mv S01umountroot        S60umountroot
mv S01unattended-upgrades    S10unattended-upgrades
mv S02urandom            S30urandom
mv S02wpa-ifupdown        S15wpa-ifupdown

This is my rc2.d file:

mv S01binfmt-support        S90binfmt-support
mv S01boinc-client        S20boinc-client
mv S01fancontrol        S20fancontrol
mv S01xrdp            S20xrdp
mv S04openvpn            S16openvpn
mv S05acpi-support        S99acpi-support
mv S05atieventsd        S31atieventsd
mv S05clamav-freshclam        S20clamav-freshclam
mv S05cups            S50cups
mv S05hddtemp            S20hddtemp
mv S05ntp            S23ntp
mv S05pcscd            S50pcscd
mv S05policycoreutils        S00policycoreutils
mv S05pulseaudio        S50pulseaudio
mv S05rsync            S50rsync
mv S05smartmontools        S20smartmontools
mv S06bluetooth            S25bluetooth
mv S06postfix            S20postfix
mv S06powernowd            S20powernowd
mv S06powernowd.early        S10powernowd.early
mv S06samba4            S20samba4
mv S19vmware            S19vmware
mv S20kerneloops        S20kerneloops
mv S20speech-dispatcher        S20speech-dispatcher
mv S50vmware-USBArbitrator    S50vmware-USBArbitrator
mv S70dns-clean            S70dns-clean
mv S70pppd-dns            S70pppd-dns
mv S99grub-common        S99grub-common
mv S99ondemand            S99ondemand
mv S99rc.local            S99rc.local

This is my rc6.d file:

mv K01bluetooth            K74bluetooth
mv K01boinc-client        K20boinc-client
mv K01hddtemp            K20hddtemp
mv K01openvpn            K80openvpn
mv K01pcscd            K50pcscd
mv K01policycoreutils        K99policycoreutils
mv K01postfix            K20postfix
mv K01samba4            K20samba4
mv K01xrdp            K20xrdp
mv K02atieventsd        K31atieventsd
mv K05clamav-freshclam        K20clamav-freshclam
mv K08vmware            K08vmware
mv S01reboot            S90reboot
mv S01networking        S35networking
mv S01sendsigs            S20sendsigs
mv S01umountfs            S40umountfs
mv S01umountnfs.sh        S31umountnfs.sh
mv S01umountroot        S60umountroot
mv S01unattended-upgrades    S10unattended-upgrades
mv S02urandom            S30urandom
mv S02wpa-ifupdown        S15wpa-ifupdown

This is my rcS.d file:

mv S01apparmor        S37apparmor
mv S01brltty        S25brltty
mv S01lm-sensors    S47lm-sensors
mv S01setkey        S37setkey
mv S01x11-common    S70x11-common
mv S02hdparm        S02hdparm
mv S02pcmciautils    S13pcmciautils
mv S02urandom        S55urandom
mv S05policycoreutils    S00policycoreutils

Check the actual numbers on your own system if you try to use them.

Reply
0 Kudos
JustinTrouble
Contributor
Contributor

I've just downloaded and installed the evaluation version of Workstation 8 with the view of purchasing if satisfied.

Needless to say, I am absolutely livid that the installer has broken my system and I'm spending my valuable time fixing it (manually). I have software RAID so it broke my machine completely on a reboot and wouldn't even start.

I won't be purchasing VMware Workstation, and nether will any of my team. We'll stick to VirtualBox.

This silly issue is typical of my experience with Workstation in the past. We ditched licensed copies of Workstation 4 or 5 due to silly problems and was willing to give Workstation another look this time.

Reply
0 Kudos
Viperzero
Contributor
Contributor

Hi all,

I have a dedicated server running 11.04 Nattty (AMD-64 bit + 4 GPU). Now I am required to install vm player to run guest OS and luckily bumped this thread. So is latest stable release of 4.1 wmplayer working ok now or will it wreck something? I wouldn't want to spent entire weekend with broken server.

Thanks for all community members, this is a great resource thanks to you all.

Reply
0 Kudos
dcstar
Contributor
Contributor

The issue was fixed months ago.

Reply
0 Kudos