Due to an accidental update on VM with Windows Server 2008 SP2, the HASP USB key is no longer recognised. The key works on my laptop, so it looks fine. I have a pool of VMs built on XenServer 6.5. The Windows Server sits on one of the nodes. So I need to make a pass through for a specific USB port on a specific VM. Since the HASP key is not a storage device, I am not sure if method described here really works, plus the version of Xen is a bit different:
https://discussions.citrix.com/topic/351605-xenserver-62-passtrough-from-usb-to-windows-7-vm/
Also, typing lspci | grep USB
on XenServer command line, does not give me the device. How can I list connected devices from all the VMs USB ports, not just the one where Xen is installed?
Basically, the question is, how to make the HASP key visible to the mentioned VM?
![](../../users/profiles/476716.webp)
- 1
- 1
2 Answers
My customers mostly use USB over IP device for such need. Like; https://www.digi.com/products/usb-and-serial-connectivity/usb-over-ip-hubs/anywhereusb
It work for dongle. It's especially good if you have more than one host, as even in HA or load balancing mode the VM will always be able to read the dongle.
![](../../users/profiles/256639.webp)
- 16,300
- 4
- 26
- 48
Thanks for an offer. I managed to resolve the issue by following this guide https://medium.com/@alexander.bazhenov/%D0%BF%D1%80%D0%BE%D0%B1%D1%80%D0%BE%D1%81-usb-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2-%D0%B2-xenserver-50a9b4e8a80a
Basically, you can follow the commands on XenServer:
lspci | grep USB
you get a list of USB controllers with their IDs like 00:1d.0
then you check which of the controllers are used for the dongle by:
lsusb
note, that you might need to install the usb utilities, by:
yum install --enablerepo=base usbutils
after that list the virtual machines, where test is the name of the machine
xe vm-list name-label=test
this will show you the uuid of the machine. then use all info to pass it through
xe vm-param-set other-config:pci=0/000:00:1d.0 uuid=cd9c4255-d28a-c086–113c-c1716293449d
thats all. you can check if its successful by
xe vm-param-list uuid=cd9c4255-d28a-c086–113c-c1716293449d | grep other-config
![](../../users/profiles/476716.webp)
- 1
- 1