Can Virtual machine detect the connection of a scanner? Or more generally, can virtual machine detect any hardware connection, including sound speaker, microphone and so on?
The point of me asking this is because I want to shift all my development, and my desktops into a virtual machines for easy backup and maintenance purpose. So I will be doing my scanning inside a VM, gmail chatting inside the VM, listening to songs inside the VM, synchronizing my mobile device inside the VM and so on.
Any thoughts?
Edit: I am using VMWare
It depends on the virtualization software.
For example, VMware ESX does not support this for USB devices.
On the other hand, VMware Fusion does support it. Here's a screenshot of the menus where I can choose which USB devices I'd like to connect to my virtual machine:
This works great for scanners, cameras, flash drives, hard drives, etc. Generally, you find this feature appears more on desktop-type virtualization products (like Fusion and Virtual PC) instead of datacenter-type virtualization products.
A good VM emulates a system bus, including USB. The trick real trick is how and when you do pass through. I know I've seen vmware on linux offer an option to connect USB through to the VM. I think it requires some kernel magic on the client kernel but definately doable.
Simply the answer is YES... :) You can do configurations using VM console
Yes, Virtual machines can use hardware on the host machine. Some can even use hardware connected to the machine that the client is running on (if that is different), so that you can insert a CD in your local machine, for instance, and have it appear on the virtual machine running on a server somewhere else. Or for speakers at least, via Remote Desktop or VNC.
Whether this detection is done automatically or not depends on how you have your virtual host machine configured. I have configured a vmware machine to autodetect when USB devices are plugged and un-plugged, and it works just fine.
How you do this depends on what virtual environment you are using and what OS it is running under.
Basically, the answer to this is yes. But, it depends on the VM you are using, and how you have it configured. If you have a specific VM in mind, that could help us answer more specifically, but I know that VMWare and Virtual PC definitely do just that. Most that I know of do.
There is one caveat: if you are using any programs that are video accelerated they will generally not work, but more basic things will.