汎用 SCSI デバイスを仮想マシンに追加するときに、使用可能な SCSI デバイスのリストに目的のデバイスが表示されない場合があります。
問題
汎用 SCSI デバイスを仮想マシンに追加したにもかかわらず、使用可能な SCSI デバイスのリストに追加したデバイスが表示されない場合があります。
原因
これは、目的のデバイスのドライバがホスト システムにインストールされていない、ホスト システム上の特定のドライバが存在するために目的のデバイスが検出されなくなっている、またはホスト OS にドライバが用意されていないデバイスを仮想マシンで使用していることが原因です。
解決方法
- デバイスがホスト システムで使用する SCSI バスの番号を確認します。
すべての IDE バスに番号が割り当てられた後に、ホスト OS によって SCSI バスに番号が割り当てられます。たとえば、2 つの IDE バスがある場合、それらに割り当てられる番号は 0 と 1 です。最初の SCSI バスにはバス番号 2 が割り当てられます。
winobj などのサードパーティ製ツールを使用して、SCSI バスの番号を確認することもできます。
- デバイスが仮想マシンとホスト システムで使用するターゲット ID を確認します。
この ID は、通常デバイスのジャンパーやスイッチによって設定されます。
- 目的のデバイスのデバイス ドライバがホスト システムにインストールされているかどうかを確認します。
デバイス ドライバがインストールされていない場合は、インストールして、目的のデバイスが表示されるかどうか確認します。デバイスが使用中であるためにホストとゲスト間で発生する競合を回避するには、ホスト システムにドライバをインストールしないようにします。
- 元の SCSI デバイス ドライバがホスト システムにすでにインストールされている場合は、そのドライバを無効にします。
デバイス ドライバがデバイスを所有している場合、一部の Windows オペレーティング システムは、アダプタからの送信コマンドを処理しません。
- 仮想マシンをパワーオフし、仮想マシン構成ファイル(.vmx)をテキスト エディタで開きます。
- 仮想マシン構成ファイル(.vmx)に次の行を追加または変更します。
scsiZ:Y.fileName = "deviceName"
Z は、デバイスが仮想マシン内で使用する SCSI バスの番号です。deviceName には、scsiX:Y という形式を用います。ここで、X はデバイスがホスト システム上で使用する SCSI バスの番号、Y はデバイスが仮想マシンとホスト システムの両方で使用するターゲット ID です。
たとえば、問題のあるデバイスが CD-ROM ドライブで、既存のエントリが
scsi0:4.fileName = "CdRom0"、ホスト システム上のデバイスのバス番号が 2、ターゲット ID が 4 の場合は、この行を
scsi0:4.fileName = "scsi2:4" に変更します。
- 仮想マシンに SCSI デバイスが含まれていない場合に、新しい仮想 SCSI アダプタに汎用 SCSI デバイスを追加したり、既存の SCSI デバイスを汎用 SCSI デバイスとして使用するには、次の行を仮想マシン構成ファイル(.vmx)に追加します。
scsiZ:Y.deviceType = "scsi-passthru"
- 仮想マシンに SCSI デバイスが含まれていない場合に、新しい仮想 SCSI アダプタに汎用 SCSI デバイスを追加する場合には、次の行を仮想マシン構成ファイル(.vmx)に追加します。
scsiZ:Y.present = "true"
scsiZ.present = "true"