VMware Cloud Community
foster29
Contributor
Contributor

VM will not auto start per script

Below is a copy of the script that I'm running to create a VM from a existing image.: All steps succeed with the expection of the last one (booting up the machine) I recieve this message:

Virtual Machine Message;[/b]

msg.dsk. adapterMismatch: The Disk connected to the scsi0:0 node has been created for a buslogic scsi adapter but the machines scsi0 device is a lsi logic SCSI adapter: VMware esx server can change the disk adapter type to LSI logic. Use caution; if a guest operating system is installed on this disk it may not be able to boot.

Script being run[/b]

create_VMX()

{

NVM=$1

NVMDIR=$2

VMMEMSIZE=$3

exec 6>&1 # Sets up write to file

exec 1>../../vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/$NVMDIR/$NVM.vmx # Open file

  1. write the configuration

echo config.version = '"'8'"' # For ESX 3.x the value is 8

echo virtualHW.version = '"'4'"' # For ESX 3.x the value is 4

echo floppy0.present = '"'true'"'

echo nvram = '"'$NVM.nvram'"'

echo powerType.powerOff = '"'default'"'

echo powerType.powerOn = '"'default'"'

echo powerType.suspend = '"'default'"'

echo powerType.reset = '"'default'"'

echo displayName = '"'$NVM'"'

echo extendedConfigFile = '"'$NVM.vmxf'"'

echo scsi0.present = '"'true'"'

echo scsi0.sharedBus = '"'none'"'

echo scsi0.virtualDev = '"'lsilogic'"'

echo memsize = '"'$VMMEMSIZE'"'

echo scsi0:0.present = '"'true'"'

echo scsi0:0.fileName = '"'DemoDriveHDD.vmdk'"'

echo scsi0:0.deviceType = '"'scsi-hardDisk'"'

echo ide0:0.present = '"'true'"'

echo ide0:0.clientDevice = '"'true'"'

echo ide0:0.deviceType = '"'cdrom-raw'"'

echo ide0:0.startConnected = '"'false'"'

echo floppy0.startConnected = '"'false'"'

echo floppy0.clientDevice = '"'true'"'

echo ethernet0.present = '"'true'"'

echo ethernet0.allowGuestConnectionControl = '"'false'"'

echo ethernet0.networkName = '"'VM Network'"'

echo ethernet0.addressType = '"'vpx'"'

echo guestOS = '"'winnetstandard'"'

echo floppy0.fileName = '"'/dev/fd0'"'

#echo ethernet0.generatedAddress = '"'00:50:56:8a:2c:7d'"'

#echo uuid.bios = '"'50 0a f2 7b 43 4e d3 67-84 f9 3f 60 56 96 93 5b'"'

echo

  1. close file

exec 1>&-

  1. make stdout a copy of FD 6 (reset stdout), and close FD6

exec 1>&6

exec 6>&-

  1. Change permissions on the file so it can be executed by anyone

chmod 755 ../../vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/$NVMDIR/$NVM.vmx

}

echo "Stopping an vmware image."

vmware-cmd /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/PM-demodrive.vmx stop

echo "Sleeping for 60 seconds"

sleep 25

echo "Unregister vmware image."

vmware-cmd -s unregister /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/PM-demodrive.vmx

echo "Sleeping for 60 seconds"

sleep 25

echo "Removing old vm images"

rm -fr ../../vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/

echo "Creating new directories"

mkdir ../../vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive

echo "Creating config file"

create_VMX PM-demodrive PM-demodrive 2048

cd /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive

/usr/sbin/vmkfstools -i /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/clone-demodrive/clone-demodrive.vmdk DemoDriveHDD.vmdk

echo "Sleeping for 60 seconds"

sleep 25

echo "Register the VM Image"

vmware-cmd -s register /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/PM-demodrive.vmx

echo "Sleeping for 60 seconds"

sleep 60

echo "Create Baseline Snapshot"

vmware-cmd /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/PM-demodrive.vmx createsnapshot "Baseline Snapshot"

echo "Sleeping for 60 seconds"

sleep 60

echo "Starting The VM Image"

vmware-cmd /vmfs/volumes/450981c1-4145586e-b9d2-00123fff9f26/PM-demodrive/PM-demodrive.vmx start

echo "Sleeping for 90 seconds"

sleep 90

echo ""

echo "Done!!!"

0 Kudos
1 Reply
Dave_Mishchenko
Immortal
Immortal

Have you check the properties for the SCSI adapter on the source VM? Otherwise you could change this line

echo scsi0.virtualDev = '"'lsilogic'"'

to

echo scsi0.virtualDev = '"'buslogic'"'

There's a process from going from buslogic to lsilogic that you could follow to change to buslogic on your source VM if you want to go that way.

http://www.vmware-land.com/Vmware_Tips.html#VM3

0 Kudos