7

I want to mount an USB drive to VMWare ESXi 5.5 host.

The USB drive is visible with lsusb : Bus 01 Device 03: ID 154b:0095 PNY

But not under /vmfs.

Under /dev/disks/ I see many entries, but dunno if one of those is my USB disk:

mpx.vmhba32:C0:T0:L0   vml.0000000000766d68626133323a303a30
mpx.vmhba33:C0:T0:L0   vml.0000000000766d68626133333a303a30
mpx.vmhba33:C0:T0:L0:1 vml.0000000000766d68626133333a303a30:1
mpx.vmhba34:C0:T0:L0   vml.0000000000766d68626133343a303a30
mpx.vmhba34:C0:T0:L0:1 vml.0000000000766d68626133343a303a30:1
mpx.vmhba34:C0:T0:L0:5 vml.0000000000766d68626133343a303a30:5
mpx.vmhba34:C0:T0:L0:6 vml.0000000000766d68626133343a303a30:6
mpx.vmhba34:C0:T0:L0:7 vml.0000000000766d68626133343a303a30:7
mpx.vmhba34:C0:T0:L0:8 vml.0000000000766d68626133343a303a30:8

dmesg says:

2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: New USB device found, idVendor=154b, idProduct=0095
2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: Product: USB 3.0 FD
2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: Manufacturer: PNY Technologies
2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: SerialNumber: 1955999360
2015-05-27T16:18:36.169Z cpu3:33302)<6>usb 1-6: usbfs: registered usb0103
2015-05-27T16:18:36.254Z cpu3:33302)<6>usb 1-3.1: new high speed USB device number 4 using ehci_hcd

I tried dozens of commands, including:

  • chkconfig usbarbitrator off
  • esxcli storage core device list
  • esxcfg-rescan
  • esxcli storage vmfs extent list

And I have read approximately 200 web pages and KBs, but I was not able to find the way to identify the right disk to be able to format it.

Somewhere in dmesg I saw this:

2015-05-27T16:18:36.739Z cpu3:33321)DMA: 612: DMA Engine 'vmhba32' created using mapper 'DMANull'.
2015-05-27T16:18:36.740Z cpu3:33321)<6>usb-storage 1-6:1.0: interface is claimed by usb-storage

Does it means that my USB drive is vmhba32?

If yes can I mount it somehow, or should I format it?

ewwhite
  • 201,205
db_ch
  • 658

3 Answers3

4

I was able to make this happen by formatting the USB drive appropriately. as a FAT16 partition at 2GB or less (my example is 500MB)

In Windows, open a commmand prompt as admin and type diskpart:

C:\Windows\system32>diskpart

Microsoft DiskPart version 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
On computer: MIS-001

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online          465 GB      0 B
  Disk 1    Online           29 GB      0 B

DISKPART> select disk 1

Disk 1 is now the selected disk.

DISKPART> list part

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Primary             29 GB  1024 KB

DISKPART> clean

DiskPart succeeded in cleaning the disk.

DISKPART> active

There is no partition selected.
Please select a partition and try again.

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online          465 GB      0 B
* Disk 1    Online           29 GB    29 GB

DISKPART> create part primary size=500

DiskPart succeeded in creating the specified partition.

DISKPART> active

DiskPart marked the current partition as active.

DISKPART> format fs=fat quick

  100 percent completed

DiskPart successfully formatted the volume.

DISKPART> assign

DiskPart successfully assigned the drive letter or mount point.

DISKPART> exit

Also: /u/ewwhite Someone asked the question:

"Why are you trying to do this?"

In my case, I had to reinstall Network Drivers after failed hardware. I had no guest access, no host access, and no storage access after a hard failure of the host. Reinstalling NIC drivers via USB or CD was only way to update these blades.

1

While this seems like it could be useful... (and it really could be a handy thing)

The VMware gods have not allowed it to happen, so you really don't have any option to use removable media or USB-attached devices for ESXi, beyond the support use case of boot and USB passthrough to a virtual machine.

Sorry.

ewwhite
  • 201,205
1

Why are you trying to do this?

I have a whole bunch of operating system ISOs on an external drive that I'd like to use on my home ESXi 6 lab, but I can't mount them directly.

Here's what I did:

  • Install Debian in a virtual machine
  • Pass the drive you'd like to access to the Debian VM
  • Mount the USB drive(s) in the VM, (for example, to /mnt/img0)
  • Install nfs-kernel-server into the Debian machine
  • Configure Debian's /etc/exports to point to /mnt/img0. For example, you could add the line:

    /mnt/img0 1.2.3.4(rw,sync,no_subtree_check,all_squash)

    • Replace 1.2.3.4 with the IP address of your ESXi host
  • In your virtual machine settings, add a new NFS datastore. Point it to the IP address if your Debian VM, leaving username and password blank if you used the sample /etc/exports above.

Now, you should be able to access the files on the USB drive as a datastore. It will also be mounted under /vmfs if you log into the ESXi host via ssh.

Admittedly, this is a lot of work to use a USB drive, but this worked in a pinch.