When you add a generic SCSI device to a virtual machine, the device does not appear in the list of available SCSI devices.

Problem

The SCSI device does not appear in the list of available SCSI devices after you add it to a virtual machine.

Cause

A driver for that device is not installed on the host system, a driver on the host system prevents the device from being detected, or the virtual machine uses a device for which there are no drivers available to the host operating system.

Solution

  1. Determine the SCSI bus number that the device uses on the host system.
    The SCSI bus is assigned a number by the host operating system after all IDE buses are assigned numbers. For example, if you have two IDE buses, they are numbered 0 and 1. The first SCSI bus is assigned bus number 2. You can use a third-party tool, such as winobj, to determine the SCSI bus number.
  2. Determine the target ID that the device uses in the virtual machine and on the host system.
    This ID is usually set by some jumpers or switches on the device.
  3. Determine whether the device driver for the device is installed on the host system.
    If the device driver is not installed, install it and see if the device appears. To avoid a device-in-use conflict between the host and guest, you might not want to install the driver on the host system.
  4. If an original SCSI device driver is already installed on the host system, disable it.
    Some Windows operating systems do not process the send command from the adapter if the device driver owns the device.
  5. Power off the virtual machine and open the virtual machine configuration (.vmx) file in a text editor.
  6. Add or change the following line in the virtual machine configuration (.vmx) file.
    scsiZ:Y.fileName = "deviceName"

    Z is the SCSI bus number the device uses in the virtual machine. For deviceName, use scsiX:Y, where X is the SCSI bus number that the device uses on the host system and Y is the target ID that the device uses in both the virtual machine and on the host system.

    For example, if the problematic device is a CD-ROM drive, the existing entry is scsi0:4.fileName = "CdRom0" and the device on the host system is located on bus 2 with target ID 4, change the line to scsi0:4.fileName = "scsi2:4".
  7. If the virtual machine does not contain any SCSI devices, to add a generic SCSI device to a new virtual SCSI adapter, or to use an existing SCSI device as a generic SCSI device, add the following line to the virtual machine configuration (.vmx) file.
    scsiZ:Y.deviceType = "scsi-passthru"
  8. If the virtual machine does not contain any SCSI devices, or to add a generic SCSI device to a new virtual SCSI adapter, add the following lines to the virtual machine configuration (.vmx) file.
    scsiZ:Y.present = "true"
    scsiZ.present = "true"