0

I am running into an issue on a server I am building into a template for Oracle on Red Hat 7. I can't seem to pull in my SCSI IDs of hard drives. Here is what I have tried so far.

[root@rhel7asm12ctemplate by-id]# lsscsi --scsi_id

[1:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0 -

[2:0:0:0] disk VMware Virtual disk 1.0 /dev/sda -

[2:0:1:0] disk VMware Virtual disk 1.0 /dev/sdb -

[2:0:2:0] disk VMware Virtual disk 1.0 /dev/sdc -

/dev/disk/by-id Does not show anything for SCSI_ID but does show me uuid.

[root@rhel7asm12ctemplate ~]# /usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sda

returns nothing as well.

Does anyone have any suggestions on what I can do to get the SCSI ID I need for ASM?

Thanks!

  • udevadm info <diskpath> | grep ID_SCSI will give you the SCSI ID – Raman Sailopal Sep 18 '17 at 15:29
  • [root@rhel7asm12ctemplate udev]# udevadm info /dev/sda | grep ID_SCSI E: ID_SCSI=1 This is what I received back when I test that. – user251717 Sep 18 '17 at 15:40
  • Is it a scsi disk? maybe it's sata? – NickD Sep 18 '17 at 15:56
  • Definitely SCSI Disks. Running in vSphere 6.0 – user251717 Sep 18 '17 at 16:30
  • 1
    You can set a flag in the .vmx file to make Linux see scsi_ids: virtuallyhyper.com/2012/03/… – Mark Plotnick Sep 18 '17 at 16:55
0

This may help. You need to have the iscsi-initiator-utils package installed. Execute the following command:

/lib/udev/scsi_id -g -u -d /dev/sdb

You'll want to change the /dev path to the appropriate sd* partition. To see the drives, you may need to create a /etc/udev/rules.d/50-udev.rules file.

0
[root@rhel7asm12ctemplate by-id]# lsscsi --scsi_id
[1:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0 -
[2:0:0:0] disk VMware Virtual disk 1.0 /dev/sda -
[2:0:1:0] disk VMware Virtual disk 1.0 /dev/sdb -
[2:0:2:0] disk VMware Virtual disk 1.0 /dev/sdc -

This output tells me the following:

  • storage controller #1 is a VMware virtual IDE bus, and it has only the virtual CD/DVD drive. For SCSI compatibility, that drive is presented as SCSI bus #0, target #0, LUN #0 on that controller.
  • storage controller #2 is the VMware virtual SCSI controller. On it, there are three disks, all on virtual bus #0: their virtual SCSI target IDs are 0, 1 and 2 respectively.

If you are trying to find out the physical SCSI bus/target/LUN triplets from the inside of a VMware virtual machine, that's a non-starter: VMware explicitly hides those details of the physical host from the VM. Neither the operating system nor Oracle ASM within the VM can see the real SCSI target IDs of the actual hardware.

As Mark Plotnick commented, adding disk.EnableUUID = "TRUE" to the .vmx file of the virtual machine will either pass through (for "raw" physical LUNs) or generate (for VMware virtual disks hosted in VMware datastores) unique, persistent WWIDs for any disks presented to the VM. After the setting has been changed, the VM needs to be powered down and restarted to make the change effective.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.