Category: VMWare Player


Please virtualize my old laptop


Virtualization is a friend.  Sadistic; but still a friend.

A user received a nice new laptop with Windows 7 enterprise. He made a formal request to turn his old laptop which ran XP into a VM in order to retain an old copy of Frame and a couple old web development tools. I discussed the benefits of upgrading software and using the better laptop or possibly using XP mode.   This was not possible as the application installers were lost and the vendors would not provide replacements.

Since these old applications were only going to be used from time to time; it was decided to use the VMware vCenter Converter to convert the old laptop to a VMware Player virtual machine.

Of course after I explained the plan; the user announced the laptop had possible hardware issues and the disk drive might have corruption problems.

I retrieved the old laptop and found it was dead. The display was black and nothing would display on an external monitor.  The laptop was an old Dell620 and I looked around for another one and was lucky to find on in the loaner pool.  But of course; I was told it was blue screening. “No Problem” I thought.  I am only going to swap the drives.

Drives were swapped and problems appeared right away. Com+ gave errors and winlogon.exe would occasionally fail. I ran a chkdisk but the problems remained.   I ran sfc /scannow and the system would reboot.

Maybe I could get lucky by running the converter and simply run an OS repair on the VM. The converter process failed at 1%.

I ran an OS repair but the converter again failed at 1%.

Next, I would try installing the converter on the laptop but again 1% with a BSOD.

Since we were licensed users of ESX; I decided to try the cold converter for vCenter.  It made it to about 17% and died.

Many of these events required a powercyle which of course caused a chkdsk run.   The run time was longer then normal. Sign of a drive with problems. I tried a low level chkdsk from the recovery console but a couple runs showed the same three repairs would happen.  I also noticed the volume shadow service had failed which explained why the converter failed.

I tried one more OS repair and ended up with a looping repair process. It would start; get past the configuration section and then it would explode and restart.

As I was trying to resolve this problem, I finally received a BSOD with 0x0000007e.  Bad Memory! I traded the memory between the laptops and the OS repair process completed.

I decided to use the cold converter again and this time it ran to completion!

I now had a working VM.

I did a cleanup of old drivers, applications no longer needed, and a couple runs of SFC and chkdisk.

VM was ready for a grateful user.

 

Advertisements

The VMWare player can be found in many work settings. It’s a lightweight version of VMware workstation; however, it’s useful for simple virtualization such as running a Linux VM on a windows laptop.  Such setups happen for companies who originally created their products on Linux and need to demonstrate their products to potential customers. This eliminates the need to carry another laptop to a customer site.

One big potential problem of this approach can center on licensing of the companies products.   Many companies use licenses which use the MAC address. VMware player generates this address as needed.  This can be when the VM is created, moved, or copied. This can be a problem if the MAC changes and invalidates software just before the demonstration.

One way to prevent this is to manually set the MAC address for the VM.   Of course the question is “How do I do this?”

You will need the current MAC address of your Linux guest.   Enter the following command:

[root@redhat ~]# /sbin/ifconfig eth0

eth0        Linc encap:Ethernet    HWaddr 00:0C:29:98:B6:14
intent addr:10.1.1.200  Bcast:10.1.255.255  Mask:255.255.0.0
inet6 addr: fe80::20c:29ff:fe98:b614/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:11 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 txqueuelen:1000
collisions:0 txqueuelen:1000
RX byte:852  (852.0 b)   TX bytes:720 (720.0 b)
Make note of the MAC address or in the case the HardWare Address.   You can issue a shutdown command to stop the VM.

The VMX configuration file is where you will find the command to generate the MAC address.   If the VMWare player was installed with the default options, you file find the file located in the users profile.

C:\Users\<userid>\Documents\Virtual Machines\<virtual machine name>

The vmx file will be the virtual machine name entered when it was created.  For example, redhat.vmx

Make a copy of this file for a backup.

Since it is a text file; you can use notepad to modify it.

Look for the section for ethernet.  In this example, we have eth0 so the option you we need is:

  • ethernet0.addressType = “generated”

If another NIC is in use, you could have ethernet1, ethernet2, etc.

You will need to change this entry to static.

  • ethernet0.addressType = “static”

Add a new entry to assign the address.

  • ethernet0.address = “00:0C:29:98:B6:14”

I did find a couple references which said to remove:

  • ethernet0.generated.Address
  • ethernet0.generated.AddressOffset

However, I did not find them in the Redhat VMX file.   They might exist in other setups so look for them.

Save the file and then boot your VM.